oracle对应数据库时间字段的模糊查询以及普通字段的模糊查询

2020-06-18  本文已影响0人  李彬燊666

针对时间类型字段的模糊查询

方法一:将时间类型转换为String ,结合LIke模糊查询 某一年 /某年某月/某年某月某日【对于时间的模糊查询多用于电商、货拉拉等项目】    该种方式的效率不好

example: 时间字段 createTime。

=============================================== //查询2019年的数据记录

select * from ds_dyzsk_filemodels t where to_char(t.createtime,'yyyy') like '2019';

=============================================== //查询202006的数据记录

select * from ds_dyzsk_filemodels t where to_char(t.createtime,'yyyymm') like '202006';

=============================================== //查询202006的数据记录 

select * from ds_dyzsk_filemodels t where to_char(t.createtime,'yyyymm') like '202006';

=============================================== //查询20200611的数据记录  

select * from ds_dyzsk_filemodels t where to_char(t.createtime,'yyyymmdd') like '20200611';


oracle 注意:

Oracle 对字符串进行日期转换时,如果是年月日的形式,即“2019-03-26”,将会被转为“2019-03-26 00:00:00”

Oracle 在进行日期比较时,最好直接指定日期比较的格式,不要进行隐式转换


方式二:使用between and 以及  to_date()  函数查询某个时间段内的记录

查询 时间段内的记录: 20200506 00:00:00----》 20200619 23:56:56

select * from ds_dyzsk_filemodels t where t.createtime between to_date('20200506 00:00:00','yyyymmdd hh24:mi:ss') and to_date('20200619 23:56:56','yyyymmdd hh24:mi:ss');

上一篇 下一篇

猜你喜欢

热点阅读