我正在尝试从数据库中获取“Extracto”对象,其中当前日期与Extracto对象的最终日期之间的天数差异小于或等于15,我没有找到有关此问题的有用信息,有没有一种方法用HQL或手动计算方式在同一查询中实现这一点,而不会在查询完成后篡改结果集?
这是我的查询:
String queryStr = "Select distinct E from Extracto E"
+ " left join fetch E.afiliados afiliado"
+ " left join fetch afiliado.personas personaAfiliado"
+ " left join fetch E.vehiculos vehiculo"
+ " left join fetch E.conductoresByIdConductor conductor1"
+ " left join fetch conductor1.personas persona1"
+ " left join fetch E.conductoresByIdConductor2 conductor2"
+ " left join fetch conductor2.personas persona2"
+ " left join fetch E.conductoresByIdConductor3 conductor3"
+ " left join fetch conductor3.personas persona3"
+ " left join fetch E.contrato contrato"
+ " left join fetch contrato.clientes cliente"
+ " left join fetch cliente.personas personaCliente"
+ " where E.servicio is null and"
+ " (E.fechaFinal - :fechaActual)<=15"
+ " and E.fechaFinal>:fechaActual)";
答案 0 :(得分:0)
where E.servicio is null and
E.fechaFinal <= :fechaMax
and E.fechaFinal>:fechaActual
然后将fetchaMax
参数值设为fechaActual + 15 days
。