您的位置:首页 > 数据库

hql的日期查询

2009-07-01 18:37 381 查看
项目中需要根据日期查询系统日志,数据库sql server
由于给定的日期格式是长时间格式:yyyy-MM-dd HH:mm:ss,
个人的方法:
1.将长时间格式转换为字符串yyyy-MM-dd HH:mm:ss;
2.截取得到日期部分,yyyy-MM-dd ;
3.使用sqlserver日期函数拼接hql语句:
------------------------------------------------
/**
   * 将长时间格式时间转换为字符串 yyyy-MM-dd HH:mm:ss
   *
   * @param dateDate
   * @return
   */
  public static String dateToStrLong(java.util.Date dateDate) {
   SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
   String dateString = formatter.format(dateDate);
   return dateString;
  }
--------------------------------------------------
截取日期部分
------------
String sdate = (String) com.gdb.chattelmortgage.util.DateTool.dateToStrLong(sysLog.getDcreateDate()).subSequence(0, 10);
-----------
使用日期函数拼接hql语句
-----------------------
StringBuffer hqlWhere = new StringBuffer();
hqlWhere.append(" and dcreateDate between dateadd(day,0,'"+sdate+"')"+"  and dateadd(day,1,'"+sdate+"')");

实行后的hql 查询日期部分语句:
........ between dateadd(day, 0, '2009-06-30') and dateadd(day, 1, '2009-06-30')

当前应用是查询制定日期当天的数据。

原本想使用模糊查询,没有实现,有待进一步验证。
--end--
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息