我有一个实体编码器有0-n喜欢。 我的查询包括一个名为编码器A的编码器,用于查找所有具有至少一个共同喜好的编码器,按照与A共同喜欢的降序排序。这是迄今为止的样子:
query.from(coder, other)
.where(
coder.firstName.toLowerCase().eq(firstName)
.and(coder.lastName.toLowerCase().eq(lastName))
.and(other.ne(coder))
.and(other.likings.any().in(coder.likings))
)
.orderBy(coder.likings.???);
有没有办法用QueryDSL来实现指定custon orderby?我在ListPath
找不到任何相关内容。如果是这样,我可以使用Guava来计算交点。
提前致谢,
罗尔夫
答案 0 :(得分:1)
你可以尝试
.orderBy(coder.likings.size().desc());
如果这不起作用,请尝试使用额外连接和分组显式聚合。