LATERAL - Połączenie typu cross join
select *
from tabela1 e,
LATERAL
(select kolumna1 from tabela2 d
where d.kolumna2= e.kolumna3)
CROSS APPLY - Połączenie typu wewnętrznego
select *
from tabela1 e
CROSS APPLY
(select kolumna1 from tabela2 d
where d.kolumna2= e.kolumna3)
OUTER APPLY - Połączenie typu wewnętrznego i lewostronnego
select *
from tabela1 e
OUTER APPLY
(select kolumna1 from tabela2 d
where d.kolumna2 = e.kolumna3)
Jeśli chcemy w OUTER APPLY chcemy mieć łączenie prawostronne musimy zamienić miejscami zapytania.