我有两个由"union"连接的select语句.在执行该声明时,我得到了:
错误报告:SQL错误:ORA-01790:表达式必须与对应的表达式01790具有相同的数据类型.00000 - "表达式必须与对应的表达式具有相同的数据类型"
也许你可以就如何诊断这个问题给我一个建议?
使用Oracle 11g第2版,以下查询给出了ORA-01790:表达式必须与相应的表达式具有相同的数据类型:
with intervals(time_interval) AS
(select trunc(systimestamp)
from dual
union all
select (time_interval + numtodsinterval(10, 'Minute'))
from intervals
where time_interval < systimestamp)
select time_interval from intervals;
Run Code Online (Sandbox Code Playgroud)
该错误表明UNION ALL的两个子查询的数据类型都返回不同的数据类型.
即使我在每个子查询中转换为TIMESTAMP,我也会得到相同的错误.
我错过了什么?
编辑:我不是在寻找CONNECT BY替代品.