我想比较日期格式不同的两列

时间:2018-11-20 14:27:08

标签: sql database oracle

我想比较日期格式不同的两列。

REQ_END_TIME = 03-APR-18 06.15.30.000000000 AM
SENDDATE = 4/3/2018

两者都有相同的日期,因此我只想跳过时间戳验证日期部分是否相同。 SENDDATE的格式为M/D/YYYY

如何更改其中的任何内容,使其类似于通过查询进行验证。

数据库-Oracle

3 个答案:

答案 0 :(得分:0)

您将同时转换为日期或字符串:

where to_date(substr(req_end_time, 9), 'DD-MON-YYYY') = to_date(send_date, 'MM/DD/YYYY')

答案 1 :(得分:0)

您可以使用CASTto_date (with the format mask)

select * from mytable
 where to_date(CAST(REQ_END_TIME as char(10)), 'DD/MM/YYYY') =
 to_date(SENDDATE, 'MM/DD/YYYY')

它将返回:

03.04.18   =   03.04.18

Compiled query

答案 2 :(得分:0)

假设SENDDATE已经是日期格式

select (to_date(REQ_END_TIME,'M/D/YYYY') - SENDDATE ) COMPARE
from mytable