Ich habe zwei Tabelle: posts(id,title,text,type)
und images(id, post_id, url)
.Erstellen mysql anzeigen wo
Ich möchte Ansicht von allen Pfosten wo posts.type=1
und posts.id = image.post_id
erstellen. Es ist wirklich?
Wenn ich versuche:
CREATE VIEW image_posts AS
SELECT *
FROM posts id
INNER JOIN images post_id ON post_id = id;
ich:
Error in query (1052): Column 'id' in on clause is ambiguous
Sie didnt schreiben Sie uns Ihre Anfrage – Zeljka
'FROM Beiträge id' - sind Sie eigentlich wissen, was das ist ...? – CBroe
Sie missverstehen Tabellen Aliase. Indem Sie 'posts id' schreiben, erstellen Sie einen Alias für die' posts'-Tabelle und sagen, dass Sie, wenn Sie an einer anderen Stelle in der Abfrage auf 'id' verweisen, die 'posts'-Tabelle meinen. Wenn zwei Tabellen denselben Feldnamen haben, müssen Sie sowohl die Tabelle als auch den Feldnamen qualifizieren. Eine qualifizierte Feldreferenz ist etwa so: 'posts.id'. In Ihrem Fall lautet der Name des qualifizierten Felds "id.id" aufgrund des von Ihnen eingerichteten Alias. –