I'm trying to write an HQL query which will cal开发者_Python百科culate an average rating for an item. I want the query to return 0 instead of null when there are no rating for a given item - so that I can use my query as a subquery. So is it possible? Is there an HQL equivalent of IFNULL or NVL?
COALESCE is the official equivalent.
It returns the first non-null of its arguments.
Example:
COALESCE(id_pati, 0)
Link Wikipedia
Nhibernate docs are out of date. Check http://docs.jboss.org/hibernate/stable/core/reference/en/html/queryhql.html
If nothing works you can try:
select
case
when something is not NULL then 0
else
end
精彩评论