0

这是 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()查询成功运行。如何解决此异常并提前致谢。

4

1 回答 1

1

查询不正确,因为 ORDER BY 引用s.name, 并且s.name不是选择列表中的项目之一。

最可能的正确解决方案是删除ORDER BY s.name. 当结果是一个值时,定义顺序没有太大意义。

于 2013-07-15T19:39:26.527 回答