Hello, 

For a LATERAL join, I think the hint (in case of error) is incomplete : 

" DÉTAIL : The combining JOIN type must be INNER or LEFT for a LATERAL 
reference. " 
to be replaced by : 
" DÉTAIL : The combining JOIN type must be CROSS, INNER or LEFT for a LATERAL 
reference. " 

Note : it depends on what is needed 

SELECT * 
FROM ( 
SELECT 'a' 
) t (c1) 
LEFT OUTER JOIN LATERAL ( 
SELECT 'b', c1 
) u(d1) ON true 
; 
c1 | d1 | c1 
----+----+---- 
a | b | a 
(1 ligne) 

SELECT * 
FROM ( 
SELECT 'a' 
) t (c1) 
INNER JOIN LATERAL ( 
SELECT 'b', c1 
) u(d1) ON true 
; 
c1 | d1 | c1 
----+----+---- 
a | b | a 
(1 ligne) 

SELECT * 
FROM ( 
SELECT 'a' 
) t (c1) 
CROSS JOIN LATERAL ( 
SELECT 'b', c1 
) u(d1) 
; 
c1 | d1 | c1 
----+----+---- 
a | b | a 
(1 ligne) 


Regards 
----- Météo-France ----- 
PALAYRET JACQUES 
DCSC/GDC 
jacques.palay...@meteo.fr 
Fixe : +33 561078319 

Reply via email to