使用postgresql在单个查询中从两个不同的表中删除

使用postgresql在单个查询中从两个不同的表中删除,postgresql,Postgresql,这是teradata代码,需要转换成PostgreSQL。我得到一个错误,因为 DELETE amt FROM $citables.CI_INBOUND_INVOICE_AMT amt , $citemp.invoice_combine ic WHERE amt.ci_inb_inv_id = ic.TSR_EDI_INV_REF; 甚至内部连接也不起作用。也许您可以尝试: ERROR: syntax error at or near "amt" LINE 1: DELETE amt

这是teradata代码,需要转换成PostgreSQL。我得到一个错误,因为

DELETE amt
FROM $citables.CI_INBOUND_INVOICE_AMT amt
   , $citemp.invoice_combine ic
WHERE amt.ci_inb_inv_id = ic.TSR_EDI_INV_REF;
甚至内部连接也不起作用。

也许您可以尝试:

ERROR:  syntax error at or near "amt"

LINE 1: DELETE amt
DELETE 
FROM $citables.CI_INBOUND_INVOICE_AMT amt
WHERE EXISTS (
    SELECT 1 
    FROM $citemp.invoice_combine ic 
    WHERE amt.ci_inb_inv_id = ic.TSR_EDI_INV_REF
);