Db2 中的嵌套连接

nested join in Db2

伙计们,这个查询有什么问题我在 DB2 LUW 中得到以下错误说明。

[42703][-206] "d.sales" is not valid in the context where it is used.. SQLCODE=-206, SQLSTATE=42703, DRIVER=4.23.42 [56098][-727] An error occurred during implicit system action type "2". Information returned for the error includes SQLCODE "-206", SQLSTATE "42703" and message tokens "d.sales".. SQLCODE=-727, SQLSTATE=56098, DRIVER=4.23.42

SELECT listagg(e.name,';'), e.address,d.sales
FROM emp e
JOIN (
    SELECT distinct sales, org
    FROM sales s
    JOIN address a ON S.ID = a.id
) d ON d.salesid = e.salesid 

查看您的查询:

SELECT listagg(e.name,';'), e.address,d.sales
FROM emp e
JOIN (SELECT distinct sales, org  -- you need to add salesid to your columns set
         FROM sales s
         JOIN address a ON S.ID = a.id
) d ON d.salesid = e.salesid 

您忘记在子查询中 select salesid d

您需要添加 s.salesida.salesid

显然我编造了一个错误的例子,因为我无法通过实际查询。我认为你们都是对的,它缺少专栏。