问题引用列如下: 我使用子查询,我需要加入从-子选择
WITH subselect_from_A AS (
SELECT A.A_ID FROM A
)
SELECT B.D_ID FROM B, subselect_from_A WHERE B.B_ID =
A.A_ID
/* or instead: subselect_from_A.A_ID */
;
如何引用子查询的列形式?
问题引用列如下: 我使用子查询,我需要加入从-子选择
WITH subselect_from_A AS (
SELECT A.A_ID FROM A
)
SELECT B.D_ID FROM B, subselect_from_A WHERE B.B_ID =
A.A_ID
/* or instead: subselect_from_A.A_ID */
;
如何引用子查询的列形式?
首先,您应该停止使用不推荐使用的隐式联接并使用显式联接。那么你可以使用表别名:
WITH subselect_from_A AS (
SELECT A.A_ID FROM A --doesn't really seem like a sub-select
)
SELECT B.D_ID, A.A_ID
FROM B
INNER JOIN subselect_from_A AS A
ON B.B_ID = A.A_ID;
与常规表格相同的方式。
WITH subselect_from_A AS (
SELECT A.A_ID FROM A
)
SELECT B.D_ID, subselect_from_A.A_ID FROM B, subselect_from_A
WHERE B.B_ID = subselect_from_A.A_ID;
什么是倒数第二行?如果你删除了'A.A_ID',那么查询就会起作用。 – mjsqu
我相信他只是简化了他的查询,使他的问题更清楚。我希望每个人都会这样做。 – wvdz
是的,我已经说得太简单了:-(太简单了,我错过了整个问题 – Chris