我正在尝试按日期对表值进行分组,并且此 HQL 查询工作正常:
SELECT af.SubmitedDate, COUNT (af.Id)
FROM ApplicationForm af
GROUP BY af.SubmitedDate
问题是字段 af.SubmitedDate 还包含时间部分,因为我使用的是 SQL Server 2005,所以分组是按日期时间完成的,而不仅仅是按日期。当我尝试在 HQL 中做这样的事情时:
SELECT CONVERT(VARCHAR(10), af.SubmitedDate, 105), COUNT (af.Id)
FROM ApplicationForm af
GROUP BY CONVERT(VARCHAR(10), af.SubmitedDate, 105)
...我收到此错误:
NHibernate.QueryException was unhandled by user code
Message="undefined alias or unknown mapping: CONVERT
这个查询在 TSQL 中是正确的,我什至在某个地方读到了 CONVERT 可以使用,但我在 Java 的 Hibernate 论坛上读到了它。
那么,如何从该日期中删除时间部分,以便分组正确?
在此先感谢,德扬。