日报数据统计中会用到当天数据的查询,下列就是日期要对应的条件:
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,格式要与格式化的样式匹配
1
2
3
4
5
6
7
8
|
当天 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
1
2
3
4
5
6
7
8
|
当天 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
1
2
3
4
5
6
7
8
|
当天 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()) |