2014-06-13 53 views
0

我要小寫所有用戶的用戶名,然後看看有多少不同的人也有,但在這個的HQL查詢得到一個錯誤:HQL數明顯降低語法

select count(distinct lower(user.username)) from UserEntity as user 

org.hibernate.hql.internal.ast.QuerySyntaxException: expecting CLOSE, found 'user' near line 1, column 29 [select count(distinct lower(user.username)) 

這工作得很好:

select count(distinct user.username) from UserEntity as user 

但是,當我添加更低(...)它失敗,任何幫助非常感謝!

+1

你如何發送該查詢休眠?由於它被格式化爲本地SQL查詢,因此您可以嘗試使用createSQLQuery ... –

+0

感謝@SergeBallesta,這是我最終做的。 – user2586917

回答

0

感謝@Serge Ballesta,我最終只是將此作爲SQL查詢而不是HQL查詢運行,並且它工作正常。

1

什麼:

select count(lower(user.username)) from UserEntity as user group by lower(user.username)

我的猜測是你正在搞亂聚合函數和語句:count(disctinct lower(...))是HQL不支持的[聚合函數] - [語句] - [聚合函數]模式(或至少doesn't treat in documentation)。