我试图加入两个选择查询,其中第一个查询中的列用作第二个查询中的值。这是查询的样子-
SELECT q1.a, q1.b, q2.a, q2.b FROM
(SELECT
func(sysdate, someDate) as a,
col2 as b,
rownum AS r
FROM DUAL) q1
INNER JOIN
(SELECT
func(q1.a, someDate) as a,
col4 as b,
rownum AS r
FROM DUAL) q2
USING (r)
如您所见,问题是 func(q1.a, someDate)
。它是一个从“ q1”(也是日期)中获取“ a”列的值的函数。
具有相同查询的数据看起来像
80.05 2015-11-16 17:26:00 80.05 2015-11-16 17:26:00 1
注意:Col2和Col4也是函数,其中col4指的是col2值。我只是不想在这里键入它,因为这看起来很混乱。此查询将链接多达8个其他选择。
看起来下面的查询内容是您所追求的:
WITH q1 AS
( SELECT func(sysdate, someDate) as a,
col2 as b,
rownum AS r
FROM DUAL
)
SELECT q1.a,
q1.b,
func(q1.a, someDate) as a,
col4 as b
FROM q1
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句