oracle怎么过滤不符合日期,Oracle SQL where子句中带有日期过滤器的无效数字

使用Oracle SQL,我的查询出现此错误:

ORA-01722:无效的数字01722. 00000 - “无效的数字”

我使用两个表来从请求的事务表中获取最大日期和最小日期 . 如果没有“AND mgr_min.create_date> to_date('01 -01-15','MM-DD -YY')这一行,它似乎会返回我需要的结果 . 但是当我尝试根据创建请求的日期进行过滤时...我得到了错误 . 这是查询:

SELECT mr.accessor_id,

mrs.status_description,

mso.option_name,

CAST(mgr_max.create_date AS TIMESTAMP) AS "Action Date",

mgr_max.detail_comment AS "Comment",

mgr_min.create_date AS "Date Created"

FROM moca_request mr,

moca_request_status mrs,

moca_system_option mso,

moca_system ms,

(SELECT mrt.request_id, mrt.status_id, mrt.approver_id, mrt.create_date, mrt.detail_comment

FROM moca_request_transaction mrt

INNER JOIN (

SELECT request_id, MAX(create_date) AS maxdate

FROM moca_request_transaction

GROUP BY request_id) mrt2

ON mrt.request_id = mrt2.request_id AND mrt.create_date = mrt2.maxdate) mgr_max,

(SELECT mrt3.create_date, mrt3.request_id

FROM moca_request_transaction mrt3

INNER JOIN (

SELECT request_id, MIN(create_date) AS createdate

FROM moca_request_transaction

GROUP BY request_id) mrt4

ON mrt3.request_id = mrt4.request_id AND mrt3.create_date = mrt4.createdate) mgr_min

WHERE mgr_max.request_id = mr.request_id

AND mgr_max.status_id = mrs.status_id

AND mgr_min.request_id = mr.request_id

AND mso.option_id = mr.option_id

AND ms.system_id = mr.system_id

AND mgr_min.create_date > to_date('01-01-15', 'MM-DD-YY')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值