在Hibernate Criteria查询中合并等效?

JMM*_*JMM 6 sql hibernate criteria coalesce nvl

我想将以下查询编写为Hibernate Criteria查询:

   select 
      to_char(nvl(ol.updated_datetime, ol.created_datetime), 'dd/mm/yyyy'), sum(discount_price)
   from order_line ol
   where nvl(ol.updated_datetime, ol.created_datetime) between to_date('05-may-10') and to_date('30-may-10') 
   group by to_char(nvl(ol.updated_datetime, ol.created_datetime), 'dd/mm/yyyy')
Run Code Online (Sandbox Code Playgroud)

但我不知道如何将nvl函数转换为Criteria查询等价物.我意识到HQL有一个coalesce表达式,但我想把它写成Criteria查询.

任何建议都会非常感激!

编辑:如果任何人都可以提供执行上述操作的HQL查询,也可以作为我的解决方案.

小智 1

代替nvl(),您应该能够使用coalesce(). 这个函数是一个 SQL 标准,应该可以工作。

当你问这个问题时,我意识到你可能没有这个功能。nHibernate 支持票证[NH-2711]涵盖了 COALESCE 函数的包含内容。