我正在尝试形成一个JPQL查询,该查询按一些功能的计数排序。让我们假设实体篮子:
Basket - (Long) id, (String) name, (Set<Thing>) things_in_basket
我正在尝试编写一个由一些内部特征排序的查询。我想实现类似的目标:
SELECT b FROM Basket b ORDER BY COUNT(things_in_basket.id > 1000) DESC
但它显然不起作用 - 它说:expecting CLOSE, found '>'
- 甚至可以使用JPQL吗?在经典SQL中,这并不困难。
由于
答案 0 :(得分:-1)
您正在使用ORDER BY
子句来订购和过滤结果。那不对。 ORDER BY
子句只应用于排序结果。如果要过滤它们,请添加WHERE
子句。
SELECT b
FROM Basket b
ORDER BY COUNT(things_in_basket.id) DESC
WHERE things_in_basket.id > 1000