论坛首页 Java企业应用论坛

hibernate取出一周内的所有数据

浏览 2999 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-11-01  
如果我们想取数据库中的一周的数据条数怎么办,比如我使用的是mysql数据库,可以使用String sql = "select count(*) from news n where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(n.add_date) ";
注意这里的函数DATE_SUB是mysql的自带函数,所以必须使用sql本地查询,另外如果用方法session.createSQLQuery(sql).uniqueResult())取得条数,返回BigInteger对象。
如果想取出数据对象,可以用如下方法
sql+=select {n.*} from news n where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(n.add_date);
SQLQuery q = session.createSQLQuery(sql);
q.addEntity("n",News.class);
return q.list();

   发表时间:2008-11-02  
这个看起来是Mysql语法的事,跟hibernate没什么关系吧。

如果是跟Hibernate有关的我觉得应该是由Calendar之类算出开始日期和结束日期然后使用通用语句。

(为了Hibernate可更换数据库而不要改代码的荣耀。。。)
0 请登录后投票
   发表时间:2008-11-04  
越搞越复杂。。。。。。。。。。

0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics