标签: ora-01790

如何解决Oracle错误ORA-01790?

我有两个由"union"连接的select语句.在执行该声明时,我得到了:

错误报告:SQL错误:ORA-01790:表达式必须与对应的表达式01790具有相同的数据类型.00000 - "表达式必须与对应的表达式具有相同的数据类型"

也许你可以就如何诊断这个问题给我一个建议?

sql oracle oracle10g oracle11g ora-01790

5
推荐指数
4
解决办法
6万
查看次数

给出ORA-01790的递归SQL

使用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替代品.

sql oracle oracle11g ora-01790

5
推荐指数
1
解决办法
1907
查看次数

标签 统计

ora-01790 ×2

oracle ×2

oracle11g ×2

sql ×2

oracle10g ×1