sql >> Databasteknik >  >> RDS >> Mysql

Välj flera tabeller när en tabell är tom i MySQL

Använda två tabeller i from klausul är funktionellt likvärdig med en cross join :

select  *
from    A
cross join
        B

Detta returnerar en rad med A för varje rad i B. När B är tom är resultatet också tomt. Du kan fixa det genom att använda en left join . Med en left join , kan du returnera rader även om en av tabellerna är tom. Till exempel:

select  * 
from    A
left join  
        B
on      1=1

Som villkoret 1=1 är alltid sant, detta är precis som en cross join förutom att det också fungerar för tomma tabeller.



  1. MYSQL Konvertera tidsstämpel till månad

  2. rake db:create - sorteringsproblem

  3. MySql få lista över unika ord från tabell där värden i ett fält separeras med kommatecken

  4. hur man undkommer specialtecken i mysql jdbc anslutningssträng