1.日期
select TO_DATE(‘20160601’, ‘YYYYMMDD’)-1 from dual
and a.src_date_created >= TRUNC(TO_DATE(‘20160502’, ‘YYYYMMDD’),’MM’)
and a.src_date_created < TO_DATE(‘20160509’, ‘YYYYMMDD’)-1
to_char(trunc(sysdate, ‘dd’) - 6, ‘yyyymmdd’)
1.select trunc(sysdate) from dual –2017/8/28 今天的日期
2.select trunc(sysdate, ‘mm’) from dual –2017/8/1 返回当月第一天.
3.select trunc(sysdate,’yy’) from dual –2017/1/1 返回当年第一天
4.select trunc(sysdate,’dd’) from dual –2017/8/28 返回当前年月日
5.select trunc(sysdate,’yyyy’) from dual –2017/1/1 返回当年第一天
6.select trunc(sysdate,’d’) from dual –2017/8/27 (星期天)返回当前星期的第一天
select trunc(sysdate,’IW’) from dual –返回当前星期的第一天,即星期一
7.select trunc(sysdate, ‘hh’) from dual –2017/8/28 14:00:00 当前时间为14:41
8.select trunc(sysdate, ‘mi’) from dual –2017/8/28 14:41:00 TRUNC()函数没有秒的精确
2.设置具体的时间点
select trunc(sysdate) + 15 / 24 from dual
output: 2017/8/28 15:00:00时间限制为小时
where a.updated_date>=to_date(‘2016-10-17 19:00:00’, ‘YYYY-MM-DD HH24:MI:SS’)
and a.updated_date<=to_date(‘2016-10-17 21:00:00’, ‘YYYY-MM-DD HH24:MI:SS’)时间类型是varchar2的
AND T.UPDATED_DATE = TO_CHAR(TRUNC(SYSDATE-1, ‘MM’), ‘YYYY-MM-DD’)修改时间格式 为 YYYY-MM 的
TO_CHAR(trunc(add_months(last_day(sysdate), +3)), ‘YYYY-MM’)修改时间格式为 MM
extract(month from a.policy_end_date) = TO_CHAR(trunc(add_months(last_day(sysdate), +3)),
‘MM’)–手动填写数值
months_between(add_months(sysdate, 12), sysdate)当前月减一个月的第一天
add_months(trunc(sysdate, ‘mm’),-1)当前月加两个月
ADD_MONTHS(TRUNC(TRUNC(SYSDATE, ‘IW’)-1,’MM’),2)T日提供T-1日清单,周一提供周五-周日数据
and to_char(t.created_date,’yyyy-MM-dd’)>= decode(to_char
(sysdate,’d’),’2’,to_char(sysdate-3,’yyyy-MM-dd’),to_char(sysdate-1,’yyyy-MM-dd’))and to_char(t.created_date,’yyyy-MM-dd’)< to_char(sysdate,’yyyy-MM-dd’)
分别取年 、月、日
select extract(year from date’2018-08-28’) year from dual;
YEAR2018
select extract(month from date’2018-08-28’) month from dual;
MONTH8
select extract(day from date’2018-08-28’) day from dual;
DAY28