oracle 按时间查询可以有2种形式
to_date and to_char
for example:
// 将数据库字段转成char 进行查询
select * from tableName where to_char(字段名,'yyyy-mm-dd')<='2015-11-11'
//将条件转成date进行查询
select * from tableNmae where 字段名<=to_date('2015-11-11','yyyy-mm-dd')
两者唯一的区别是 前者能查到11-11的数据。
与java结合
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
String time=df.format(new Date());//获取当前时间
String sql= "select * from tbl_holly_tdlist where to_char( time,'yyyy-mm-dd')<='"+time+"'";
业务需要获取当前一年的时间的数据
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
Calendar calendar =df.getCalendar();
Date date = new Date();
calendar.setTime(date);
calendar.add(Calendar.YEAR, -1);// 将时间推前一年。
date = calendar.getTime();
String sql = "";
sql+="select * from tbl_holly_tdlist where to_char( time,'yyyy-mm-dd')>='"+df.format(date)+"' order by time desc";
第一次写,主要是为了以后自己查阅方面,如能帮到别人,那就更好了。