Използване на две таблици в from
клаузата е функционално еквивалентна на cross join
:
select *
from A
cross join
B
Това връща ред от A за всеки ред в B. Когато B е празен, резултатът също е празен. Можете да поправите това, като използвате left join
. С left join
, можете да връщате редове, дори ако една от таблиците е празна. Например:
select *
from A
left join
B
on 1=1
Като условие 1=1
винаги е вярно, това е точно като cross join
освен че работи и за празни таблици.