Ich denke, dass ich mit dieser besonderen Situation stecken bin:
wählen Zeilen in einer Eins-zu vielen Situation
Hier sind meine Tabellen:
item_table:
id | Artikel
1: A
2: B
3: C
attr_table:
attr | item_id
1: 1
1: 2
2: 1
2: 3
3: 2
3: 3
Ich würde gerne wissen, ob es technisch möglich ist, ein beliebiges Element abzurufen, die verbunden ist mit attr = 1 und 3. Die Antwort sollte nur "B" sein. Ebenso, wenn ich ein Element anfrage, das mit attr = 1 und 2 verknüpft ist, sollte ich nur 'A' bekommen.
Die Sache ist, dass attr_table potenziell viele Zeilen haben kann und ich möchte nur eine Abfrage machen.
Diese Frage klingt einfach und ich bin ziemlich verärgert darüber, dass ich sie nicht beantworten kann.
Ich hatte gehofft, dass jemand klüger könnte mir eine Hand ...
Ist eine innere Verbindung nicht gleichbedeutend mit einer zweiten Auswahl? –
Dies ist zerbrechlich, mit dem 'count =', da es nicht funktionieren wird, wenn es genau zwei attr-Zeilen gibt, die dem Element mit den angegebenen attrs entsprechen. Aber schlimmer, es scheitert, wenn es zwei attr-Zeilen mit item_id = 1 und attr = 1 gibt - also bringt es ein falsches positives zurück, ein Element ohne attr = 3. Und es addiert die Kosten einer Gruppe um. – tpdi
@Blank Xavier, es tut mir leid, aber ich verstehe nicht, was Sie versuchen zu bekommen. –