数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

oracle带时分秒日期的比较


发布日期:2024年08月09日
 
oracle带时分秒日期的比较

oracle 中不带时分秒的字符串 to_date 转换时间后与带时分秒的date型字段做带等值的比较 (>=<==)时由于字符串不带时分秒所以转换后时分秒默认为::oracle中比较date是以一个时间点来比较的精确到秒甚至毫秒微秒纳秒所以date字段的时分秒不为::的就与不带时分秒字符串转换后的date匹配不上示例

表中huhai_seq_value所有数据

MYDATE

sql

select hsvmydate from huhai_seq_value hsv

where hsvmydate = to_date(yyyymmdd );

sql查询结果

MYDATE

sql

select hsvmydate from huhai_seq_value hsv

where to_char(hsvmydateyyyymmdd) = ;

sql查询结果

MYDATE

结论所以在做不带时分秒的日期比较时最好用to_char函数转换后与字符串比较

用between比较两个时间

select * from tbl_name where issue_time between to_date( ::YYYYMMDD HH:MI:SS) and sysdate;

上一篇:PL/SQL最差实践

下一篇:Oracle中与时间有关的计算