您的位置:首页 > 编程语言 > Java开发

关于 java 按时间条件查询 sql语句

2016-11-14 13:03 246 查看
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";

第一次写,主要是为了以后自己查阅方面,如能帮到别人,那就更好了。   
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java oracle sql