QueryDSL中的Mysql日期函数

时间:2014-07-02 13:08:32

标签: java mysql sql querydsl

这是我的sql

select count(*) date(date) as pub_date from table group by pub_date;

DateExpression没有获取日期的功能。表格中的日期列为DATETIME,我只想按DATE进行分组,但是如何在querydsl中进行分组?

EIDT

完成DateTemplate.create(Date.class, "date({0})", $.date)

3 个答案:

答案 0 :(得分:1)

你必须使用SQLExpressions::date。结果表达式可用作groupBy或com.querydsl.sql.SQLQuery的其他方法的参数。

import com.querydsl.sql.SQLExpressions;
SQLExpressions.date(QTable.table.date)

答案 1 :(得分:0)

对于日期,只需按照以下方式将其投射到组中, 试试;

 select count(date), date as pub_date from table group by CAST(date AS DATE);

答案 2 :(得分:0)

尝试

to_date(date, 'yyyy-mm-dd')

第二个参数是你需要的任何格式。