Java 使用hibernate和informix从datetime到date转换

Java 使用hibernate和informix从datetime到date转换,java,hibernate,informix,Java,Hibernate,Informix,我对Hibernate中的“cast”表达式有问题, 当我执行下一个HQL时: SELECT new es.xunta.surex.vo.informes.ActividadUsuarioAuxVO(usu.codusu, cast(au.dataaudit as date), fun.idfunaudit, count(*)) FROM AuditAnotacion au, FunAuditoria fun, Usuario usu WHERE au.funAuditoria.idfunau

我对Hibernate中的“cast”表达式有问题, 当我执行下一个HQL时:

SELECT new es.xunta.surex.vo.informes.ActividadUsuarioAuxVO(usu.codusu, cast(au.dataaudit as date), fun.idfunaudit, count(*)) 
FROM AuditAnotacion au, FunAuditoria fun, Usuario usu
WHERE au.funAuditoria.idfunaudit=fun.idfunaudit
AND  au.usuario.idusu=usu.idusu
AND  usu.unidade.iduni=:iduni
AND  au.dataaudit between :desde AND :hasta
GROUP BY 1, 2, 3
ORDER BY 1, 2, 3
Hibernate将其“转换”为以下SQL:

select
    usuario2_.codusu as col_0_0_,
    cast(auditanota0_.dataauditasdate) as col_1_0_,
    funauditor1_.idfunaudit as col_2_0_,
    count(*) as col_3_0_
from
    audit_anotacion auditanota0_,
    fun_auditoria funauditor1_,
    usuario usuario2_
where
    (
        auditanota0_.idfunaudit=funauditor1_.idfunaudit
    )
    AND(
        auditanota0_.idusu=usuario2_.idusu
    )
    AND(
        usuario2_.iduni=?
    )
    AND(
        auditanota0_.dataaudit between ? AND ?
    )
group by
    1 ,
    2 ,
    3
order by
    1 ,
    2 ,
    3
我得到了这个错误:

A syntax error has occurred.
org.hibernate.exception.SQLGrammarException: could not execute query
因为它像这样解析强制转换'castauditanota0\u0.dataauditasdate' 而不是“castauditanota0_u2;.dataaudit作为日期”

我使用的是org.hibernate.dialogue.informixdialogue,那么怎么了

你能帮我吗?请 多谢各位