SELECT * FROM 表名
WHERE TO_CHAR(日期列,'YYYY-MM') = TO_CHAR('2013-06','YYYY-MM') 或者
SELECT * FROM 表名
WHERE 日期列 = TO_Date('2013-06','YYYY-MM')
2、查询前一个月
select concat(to_char(sysdate,'yyyy')||to_char(add_months(sysdate,-1), '-MM-'),'01 00:00:00')start_time,
concat(to_char(sysdate,'yyyy')||to_char(add_months(sysdate,-1), '-MM-')||to_char(LAST_DAY(sysdate),'dd '),'23:59:59') end_time from dual
3、查询前一天
select to_char(sysdate-1,'yyyy-mm-dd ')||'00:00:00' start_time,to_char(sysdate-1,'yyyy-mm-dd ')||'23:59:59' end_time from dual
DATENAME()函数语法:DATENAME(param,date)。
date是时间字段名 或一个时间值param是指定要返回日期部分的参数,包括下面几种:
获取年份就可以这样写 datename(year,date) 或 datename(yy,date) 。
已系统当前时间getdate()为例,3种写法获取年份。另外,DATENAME返回的是一个字符串,如果需要返回整数,可以使用DATEPART ( datepart , date ) ,语法与DATENAME相同。
获取日期字段的年select to_char(sysdate,'yyyy') as year from dual或者:(指定日期)select to_char(to_date('2013/08/08','yyyy/mm/dd'),'yyyy') as year from dual
获取日期字段的月select to_char(sysdate,'mm') as month from dual
获取日期字段的日select to_char(sysdate,'dd') as day from dua
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)