嗨大家我正在编写一个Java程序,我需要从Oracle数据库中选择当月的记录.任何时候我需要选择当天的记录我使用:
select * from purchases where purchase_date = to_char(sysdate, 'DD-MON-YYYY')
我应该使用什么方法从当前月份中选择记录?
在表格上,日期显示如下:
10/4/2012 //for 4th October 2012
我试过了
select * from purchases where purchase_date like to_char(sysdate, 'MON-YYYY')
这当然没有选择,请协助.
解决方法:
如果purchase_date是DATE.
select *
from
purchases
where
purchase_date >= trunc(sysdate,'mm')
如果purchase_date是VARCHAR
select *
from
purchases
where
to_date(purchase_date,'mm/dd/yyyy') >= trunc(sysdate,'mm')
trunc(sysdate,’mm’)截断当前日期,保留月份,显然是年份,因此10/04/2012 08:58截断为10/01/2012 00:00.