用hibernate对mysql数据库查询排序问题
求助:
我想用hibernate对mysql里的一张表进行查询,并按日期排序。
但问题在于,表里面日期的格式如“2012-03-27 21:42:26 ”,我想只对日期进行排序,即忽略时、分、秒部分。应该如果查询呢?
------解决方案--------------------Order By TO_DAYS(time)
不过这样做无法利用索引,如果结果集的数据规模大的话,性能堪忧。
好的做法是另找个字段,只保存日期,建上索引。
------解决方案--------------------增加一个字段。。保存日期。
------解决方案--------------------
order by substr (date,0,10 ) ;
------解决方案--------------------根据日期排序跟忽不忽略略时、分、秒没啥关系啊。
你只用select TO_DAYS(time) form xxx order by time就行啦。
哪个说一定要order by TO_DAYS(time)
order by TO_DAYS(time) 和 order by time是一样的结果。但前者比后者效率差远了。