小编YRO*_*jha的帖子

如何在OUTER JOIN语句中编写子查询

我想加入两个表CUSTMR和DEPRMNT.

我需要的是:LEFT OUTER JOIN连接两个或多个带有子查询的表在LEFT OUTER JOIN中,如下所示:

表:CUSTMR,DEPRMNT

查询为:

SELECT
    cs.CUSID
    ,dp.DEPID
FROM
    CUSTMR cs
        LEFT OUTER JOIN (
            SELECT
                    dp.DEPID
                    ,dp.DEPNAME
                FROM
                    DEPRMNT dp
                WHERE
                    dp.DEPADDRESS = 'TOKYO'
        )
            ON (
                dp.DEPID = cs.CUSID
                AND cs.CUSTNAME = dp.DEPNAME
            )
WHERE
    cs.CUSID != ''
Run Code Online (Sandbox Code Playgroud)

子查询在这里:

SELECT
    dp.DEPID, dp.DEPNAME
FROM
    DEPRMNT dp
WHERE
    dp.DEPADDRESS = 'TOKYO'
Run Code Online (Sandbox Code Playgroud)

是否可以在LEFT OUTER JOIN中编写这样的子查询?

我在DB2数据库上运行此查询时收到错误.

sql

35
推荐指数
1
解决办法
17万
查看次数

标签 统计

sql ×1