这是HQL查询:
SELECT COUNT(s)
FROM Site s JOIN s.topics t
INNER JOIN t.topicExpertAssignment tea
INNER JOIN tea.expert u
INNER JOIN u.userinfo info
WHERE tea.assignedBy.id = 1 AND s.createdBy = tea.expert.id
ORDER BY s.name
当我第一次尝试运行此HQL
查询时,它会生成org.hibernate.exception.SQLGrammerException: could not execute query
异常,当我尝试再次运行此查询时,它会生成org.hibernate.exception.GenericJDBCEXception: could not execute query
异常。没有COUNT()
查询成功运行。如何解决此异常并提前感谢。
答案 0 :(得分:1)
查询不正确,因为ORDER BY引用s.name
,而s.name
不是选择列表中的项目之一。
最有可能正确的解决方法是删除ORDER BY s.name
。当结果是一个值时,定义顺序没有多大意义。