sql >> Database teknologi >  >> RDS >> Mysql

Krænkelse af kardinalitet ved brug af en underforespørgsel, der returnerer to værdier

Noget som nedenstående burde gøre tricket.

select * 
From table1 a , (select id1 , id2 from table2 ) b 
where (a.id = b.id1) or  (a.id = b.id2)

eller du kan JOIN med det samme bord to gange ved at give de sammenføjede borde et alias.

select * from table1 a 
INNER JOIN table2 b1 on a.id = b1.id1
INNER JOIN table2 b2 on a.id = b2.id2

Test venligst ovenstående mod dine datasæt/tabeller..




  1. Hvorfor ydre rækkefølge ved ikke fungerer korrekt?

  2. Brug af Unpivot-trinnet til at lave en tabeltabel ud af en krydstabel

  3. Hvad er SQL Server? (Definition, versioner, udgaver)

  4. Forespørgsel med flere værdier i en kolonne