oracle取出某个月的所有数据

2025-04-19 21:24:10
推荐回答(3个)
回答1:

1、查询确定年月的数据,使用to_date或to_char都可以实现

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

回答2:

SELECT * FROM TABLE 
WHERE TO_CHAR(INSERT_DATE,'YYYY-MM') = TO_CHAR('2013-06','YYYY-MM')

回答3:

1楼的答案是正确的