2011-05-29 98 views
0

我想在HQL计数中将日期时间格式转换为字符串格式。 例如,我在多个员工的月份的每一天的每一天都有冗余考勤数据,我需要统计并获取一天内的明确数据。HQL查询过滤日期时间数据的日期

select Count(distinct att.AttDate) from AttendanceTable att where att.AttDate between '" + startDate.Date + "' and '" + endDate.Date + "' 

但是由于时间值这个查询计算每个日期时间数据。所以我需要将datetime转换为字符串。

回答

1

HQL只允许certain set of functions

尝试

select count(distinct (
    day(att.AttDate) + 
    31 * month(att.AttDate) + 
    366 * year(att.AttDate))) 

你可以尝试str()cast()但结果不会在不同的数据库保持一致。