将时间戳转换为sybase数据库的日期hql

时间:2013-01-31 12:32:54

标签: hibernate hql

我正在使用 Sybase 数据库,我想将时间戳字段作为日期获取。如何在 HQL 中使用时间戳字段作为日期?

我的查询:

SELECT new map(NAME,SUM(MARKS),ADMISSIONDATE) 
FROM STUDENT 
GROUP BY NAME,MARKS,ADMISSIONDATE

,其中ADMISSIONDATE是数据库中的时间戳。

我想在查询中忽略时间。

2 个答案:

答案 0 :(得分:0)

认为最简单的方法是将Sybase中的 TIMESTAMP 列映射到 java.sql.Date 到STUDENT实体中。将Hibernate should map TIMESTAMP列放入适当的日期类型:

  

日期,时间,时间戳

     

java.util.Date及其子类到SQL类型DATE,TIME和TIMESTAMP(或等效类型)的类型映射。

一些建议:在new map(...)

中使用命名参数

答案 1 :(得分:0)

使用转换方法

代表:

转换(varchar(12),ADMISSIONDATE,109)将返回输出为' 2013年7月24日'