获取月(两位):select to_char(sysdate,'mm') from dual
那你就把指定的日期to_date()成date,如下:
①.、查询确定年月的数据,使用to_date或to_char都可以实现
SELECT?*?FROM?表名
select?concat(to_char(sysdate,'yyyy')||to_char(add_months(sysdate,-1),?'-MM-'),'01?00:00:00')start_time,?
--1、考虑到没有数据的也要总结出一条0的记录,那我们需要先生成一张当月的日期中间表
SELECT?FDATE
FROM?(SELECT?TRUNC(SYSDATE,?'MONTH')?+?LEVEL?-?1?AS?FDATE
FROM?DUAL
WHERE?TO_CHAR(FDATE,?'MM')?=?TO_CHAR(SYSDATE,?'MM')
SELECT?A.FDATE,?NVL(B.FNUM,?0)
FROM?(SELECT?FDATE
WHERE?TO_CHAR(FDATE,?'MM')?=?TO_CHAR(SYSDATE,?'MM'))?A
LEFT?JOIN?(SELECT?日期字段名?AS?FDATE,?COUNT(1)?AS?FNUM
FROM?表名?B
WHERE?TO_CHAR(日期字段名,?'YYYYMM')?=?TO_CHAR(SYSDATE,?'YYYYMM')
GROUP?BY?日期字段名)?B
ON?A.FDATE?=?B.FDATE
ORDER?BY?A.FDATE
以上就是土嘎嘎小编为大家整理的oracle中怎么取当月相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!