Les requêtes HQL peuvent aussi retourner le résultat de fonctions d'aggrégation sur les propriétés :
select avg(cat.weight), sum(cat.weight), max(cat.weight), count(cat) from Cat cat
Les fonctions supportées sont
avg(...), sum(...), min(...), max(...)
count(*)
count(...), count(distinct ...), count(all...)
Vous pouvez utiliser des opérateurs arithmétiques, la concaténation, et des fonctions SQL reconnues dans la clause select :
select cat.weight + sum(kitten.weight)
from Cat cat
join cat.kittens kitten
group by cat.id, cat.weightselect firstName||' '||initial||' '||upper(lastName) from Person
Les mots clé distinct et all peuvent être utilisés et ont la même signification qu'en SQL.
select distinct cat.name from Cat cat select count(distinct cat.name), count(cat) from Cat cat