sql - ORA-01802: 尽管 select 语句不包括日期操作,但 Julian 日期超出范围
问题描述
我ORA-01802: Julian date is out of range
在执行下面的select语句时得到的,它与日期无关
SELECT
*
FROM
dual
WHERE
(
(
( ltrim(TO_CHAR(109,'0000') )
|| ltrim(TO_CHAR(2020,'0000') )
|| ltrim(TO_CHAR(6,'000') )
|| ltrim(TO_CHAR(601,'000') )
|| ltrim(TO_CHAR(0,'000') )
|| ltrim(TO_CHAR(805406,'000000') )
|| ltrim(TO_CHAR(729,'000') )
|| ltrim(TO_CHAR(400,'0000') )
|| ltrim(TO_CHAR(400,'0000') )
|| ltrim(TO_CHAR(938,'000') )
|| ( 0 )
|| ( '####################' ) ) = ltrim('01092020005501000505114729000000000000####################')
AND ( 0 = 0 )
)
OR ( ltrim(TO_CHAR(109,'0000') )
|| ltrim(TO_CHAR(2020,'0000') )
|| ltrim(TO_CHAR(6,'000') )
|| ltrim(TO_CHAR(601,'000') )
|| ltrim(TO_CHAR(0,'000') )
|| ltrim(TO_CHAR(805406,'000000') )
|| ltrim(TO_CHAR(729,'000') )
|| ltrim(TO_CHAR(400,'0000') )
|| ltrim(TO_CHAR(400,'0000') )
|| ltrim(TO_CHAR(938,'000') )
|| ( 0 )
|| ( '####################' ) ) = (
SELECT
MAX(ltrim(TO_CHAR(109,'0000') )
|| ltrim(TO_CHAR(2020,'0000') )
|| ltrim(TO_CHAR(6,'000') )
|| ltrim(TO_CHAR(601,'000') )
|| ltrim(TO_CHAR(0,'000') )
|| ltrim(TO_CHAR(805406,'000000') )
|| ltrim(TO_CHAR(729,'000') )
|| ltrim(TO_CHAR(400,'0000') )
|| ltrim(TO_CHAR(400,'0000') )
|| ltrim(TO_CHAR(938,'000') )
|| (0)
|| ('####################') )
FROM
dual
WHERE
( ltrim(TO_CHAR(109,'0000') )
|| ltrim(TO_CHAR(2020,'0000') )
|| ltrim(TO_CHAR(6,'000') )
|| ltrim(TO_CHAR(601,'000') )
|| ltrim(TO_CHAR(0,'000') )
|| ltrim(TO_CHAR(805406,'000000') )
|| ltrim(TO_CHAR(729,'000') )
|| ltrim(TO_CHAR(400,'0000') )
|| ltrim(TO_CHAR(400,'0000') )
|| ltrim(TO_CHAR(938,'000') )
|| ( 0 )
|| ( '####################' ) ) < ltrim('01092020005501000505114729000000000000####################')
AND ( 0 = 1 )
)
OR ( ltrim(TO_CHAR(109,'0000') )
|| ltrim(TO_CHAR(2020,'0000') )
|| ltrim(TO_CHAR(6,'000') )
|| ltrim(TO_CHAR(601,'000') )
|| ltrim(TO_CHAR(0,'000') )
|| ltrim(TO_CHAR(805406,'000000') )
|| ltrim(TO_CHAR(729,'000') )
|| ltrim(TO_CHAR(400,'0000') )
|| ltrim(TO_CHAR(400,'0000') )
|| ltrim(TO_CHAR(938,'000') )
|| ( 0 )
|| ( '####################' ) ) = (
SELECT
MIN(ltrim(TO_CHAR(109,'0000') )
|| ltrim(TO_CHAR(2020,'0000') )
|| ltrim(TO_CHAR(6,'000') )
|| ltrim(TO_CHAR(601,'000') )
|| ltrim(TO_CHAR(0,'000') )
|| ltrim(TO_CHAR(805406,'000000') )
|| ltrim(TO_CHAR(729,'000') )
|| ltrim(TO_CHAR(400,'0000') )
|| ltrim(TO_CHAR(400,'0000') )
|| ltrim(TO_CHAR(938,'000') )
|| (0)
|| ('####################') )
FROM
dual
WHERE
( ltrim(TO_CHAR(109,'0000') )
|| ltrim(TO_CHAR(2020,'0000') )
|| ltrim(TO_CHAR(6,'000') )
|| ltrim(TO_CHAR(601,'000') )
|| ltrim(TO_CHAR(0,'000') )
|| ltrim(TO_CHAR(805406,'000000') )
|| ltrim(TO_CHAR(729,'000') )
|| ltrim(TO_CHAR(400,'0000') )
|| ltrim(TO_CHAR(400,'0000') )
|| ltrim(TO_CHAR(938,'000') )
|| ( 0 )
|| ( '####################' ) ) > ltrim('01092020005501000505114729000000000000####################')
AND ( 0 = 2 )
)
);
我在用着Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
解决方案
推荐阅读
- javascript - Angular 2 到最新版本 - jsonp 和 URLSearchParams 到 HttpClient 和 HttpParams
- php - Symfony API 平台实体继承
- ansible - 如何使ansible任务仅在一台主机上运行?对于每个应用程序
- symfony-4.3 - Symfony 4.3 如果克隆为 git 子模块,如何启用 Bundle
- javascript - 将外部音频与 html 画布动画同步
- javascript - 如何匹配所有值而不让 for-in 循环中的闭包覆盖对象?
- spring - Spring Security ACL 与 Authorization 有何不同
- javascript - 在 Moment.js 中创建日期
- c - C 输出中的随机字节
- bitbucket-server - 如何通过 Mulejob 从 Bitbucket 读取文件内容?