Ich versuche, das folgende Problem zu lösen.SQL Elaborate Joins Abfrage
Ich fühle mich wie es möglich ist, aber ich kann nicht scheinen, es zu bekommen.
Hier ist das Szenario:
Table 1 (Assets)
1 Asset-A
2 Asset-B
3 Asset-C
4 Asset-D
Table 2 (Attributes)
1 Asset-A Red
2 Asset-A Hard
3 Asset-B Red
4 Asset-B Hard
5 Asset-B Heavy
6 Asset-C Blue
7 Asset-C Hard
Wenn ich nach etwas suchen die gleichen Attribute wie Asset A, dann sollte es Anlagegut-B seit Vermögens-B hat die gleichen Attribute wie Asset A identifizieren (Es sollte schwer verworfen werden, da Asset-A nichts anderes oder Ähnliches spezifiziert hat). Außerdem, wenn ich die Attribute nur für Asset-A UND Asset-B wollte, die üblich waren, wie würde ich das bekommen?
Scheint einfach, aber ich kann es nicht nageln ...
Die eigentliche Tabelle I, bin mit fast genau Table2, einfach eine Vereinigung eines AssetID und ein AttributeId so: PK: ID
int: AssetID
int: attributeID
ich nur die Idee des Asset-Tabelle enthalten, die Frage zu vereinfachen.
Warum die -1
AND Asset != 'A'
aus derWHERE
Klausel des zweiten Schnipsel übrig? Perfekt gültige SQL-Frage. +1 –Jede Frage, die wie "Ich weiß nicht, wie Joins funktioniert" aussieht, ist ziemlich eigennützig und hat keine Verwendung jenseits des ursprünglichen Posters. –
@Mark: Diese Frage ist * weit * darüber hinaus "wie Joins arbeiten". – Quassnoi