欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

oracle 查询当天数据的sql条件写法

程序员文章站 2022-09-06 14:08:34
日报数据统计中会用到当天数据的查询,下列就是日期要对应的条件: between  to_date(to_char(sysdate,'yyyy-mm-dd')...

日报数据统计中会用到当天数据的查询,下列就是日期要对应的条件:

between
 to_date(to_char(sysdate,'yyyy-mm-dd') || ' 00:00:01','yyyy-mm-dd hh24:mi:ss') and
to_date(to_char(sysdate,'yyyy-mm-dd') || ' 23:59:59','yyyy-mm-dd hh24:mi:ss');

oracle
字段类型为varchar2,格式要与格式化的样式匹配

当天
select * from 表名 where to_char(to_date(字段名,'yyyy-mm-dd hh24:mi:ss'),'dd')=to_char(sysdate,'dd')
当周
select * from 表名 where to_char(to_date(字段名,'yyyy-mm-dd hh24:mi:ss'),'iw')=to_char(sysdate,'iw')
当月
select * from 表名 where to_char(to_date(字段名,'yyyy-mm-dd hh24:mi:ss'),'mm')=to_char(sysdate,'mm')
当季度
select * from 表名 where to_char(to_date(字段名,'yyyy-mm-dd hh24:mi:ss'),'q')=to_char(sysdate,'q')

字段类型为date

当天
select * from 表名 where to_char(字段名,'dd')=to_char(sysdate,'dd')
当周
select * from 表名 where to_char(字段名,'iw')=to_char(sysdate,'iw')
当月
select * from 表名 where to_char(字段名,'mm')=to_char(sysdate,'mm')
当季度
select * from 表名 where to_char(字段名,'q')=to_char(sysdate,'q')

sql

当天
select * from 表名 where datepart(dd,字段名) = datepart(dd, getdate()) and datepart(mm, 字段名) = datepart(mm, getdate()) and datepart(yy, 字段名) = datepart(yy, getdate())
当周
select * from 表名 where datepart(wk, 字段名) = datepart(wk, getdate()) and datepart(yy, 字段名) = datepart(yy, getdate())
当月
select * from 表名 where datepart(mm, 字段名) = datepart(mm, getdate()) and datepart(yy, 字段名) = datepart(yy, getdate())
当季度
select * from 表名 where datepart(qq, 字段名) = datepart(qq, getdate()) and datepart(yy,字段名) = datepart(yy, getdate())