【发布时间】:2017-07-11 21:20:45
【问题描述】:
当我使用UNION ALL 将它们放在一起时,我有两个返回结果的表,如下所示:
SELECT * FROM TABLE_A
UNION ALL
SELECT * FROM TABLE_A
但由于某种原因,当我将此代码添加到 WITH 子句中时,如下所示,它不起作用:
WITH
SQ_Union AS
(
SELECT * FROM TABLE_A
UNION ALL
SELECT * FROM TABLE_A
)
SELECT
*
FROM
SQ_Union
当我运行时,我得到以下信息:
ORA-00918: column ambiguously defined
两个表的列相同,名称相同,但表名和数据内容不同。为什么它在没有WITH 子句的情况下运行,而不是在它的情况下运行?
【问题讨论】:
-
您的示例中只有一个表
TABLE_A并且查询工作正常。你能检查你的查询并提供不起作用的 sql 吗? -
错误信息应指向代码中的特定行,请同时提供该信息。
标签: oracle with-statement union-all ambiguous