0

我正在尝试在以下查询中运行:

SELECT
tc.ID_NUMBER AS AFC_RPP_Number,
hc.BUSINESS AS Business,
hc.DIRECTOR AS Director,
tc.REASON_FOR_REVISION AS Description_of_Change
FROM alo_gg.AWS_PIM tc
left join lateral(
    select BUSINESS,DIRECTOR                
    FROM alo_ggg.tracker
    WHERE START_DATE <= tc.DATE AND  SO = tc.SO 
    ORDER BY START_DATE DESC 
    LIMIT 1
) hc;

上面的查询显示错误:

ERROR:  syntax error at or near "SELECT"
left join lateral (SELECT BUSINESS,DIRECTOR...

如果我单独运行子查询,它会给我一个结果,但lateral它会给我一个错误。

4

1 回答 1

3

您需要添加ON TRUE和删除逗号:

SELECT
tc.ID_NUMBER AS AFC_RPP_Number,
hc.BUSINESS AS Business,
hc.DIRECTOR AS Director,
tc.REASON_FOR_REVISION AS Description_of_Change
FROM alo_gg.AWS_PIM tc -- removing comma
left join lateral(
    select BUSINESS,DIRECTOR                
    FROM alo_ggg.tracker
    WHERE START_DATE <= tc.DATE AND  SO = tc.SO 
    ORDER BY START_DATE DESC 
    LIMIT 1
) hc  ON TRUE;  -- adding `ON` clause
于 2020-04-29T17:26:21.407 回答