我正在通过sql执行此操作,但我想在hql中执行此操作,from(select count(*)...)中的select语句在hql中不起作用,任何建议和优化将不胜感激
SELECT u.username,u.device_tocken,sr.count
from users u,
(select count(*) as count ,ssr.recepient as res from survey_recipient ssr where
(ssr.is_read is false and ssr.recepient in ('abc','xyz'))group by ssr.recepient ) sr
where
(u.username = sr.res and u.device_tocken is not null)
最佳答案
Hibernate不支持Clouse的子选择。
当我发现这个jira问题时,我尝试了很多事情并放弃了。
见这里https://hibernate.onjira.com/browse/HHH-3356
但是,如果必须使用subselect,则可以创建数据库视图,并在sql中将它们用作普通表。
关于java - 将SQL转换为HQL,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7171130/