gpt4 book ai didi

java - 最常用标签的 NamedQuery

转载 作者:行者123 更新时间:2023-12-01 21:43:32 27 4
gpt4 key购买 nike

假设我有以下 2 个类(class):

@Entity
class Article {

@Id
int id;

@ManyToMany(mappedBy="articles")
List<Tag> tags;
}

@Entity
@NamedQueries({
@NamedQuery(name = "Tag.trends", query = "SELECT t FROM Tag t") // Some magic stuff here..
})
class Tag {

@Id
String name;

@ManyToMany
List<Articles> articles;
}

现在我想创建一个命名查询来选择最常用的标签。

因此,这将需要一个连接计数和一个排序依据。但我似乎无法弄清楚这一点。

问题:如何选择最常用的标签?

例如,如果以下文章具有以下标签:

Article: Tags
0: A, B
1: A
2: C
3: A, C

输出

A // 3 times
C // 2 times
B // 1 time

最佳答案

您可以使用类似的东西来实现您想要的目标

SELECT t FROM Tag t ORDER BY SIZE(t.articles) ASC

这将为您带来按文章数量排序的标签列表。

关于java - 最常用标签的 NamedQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36185398/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com