给定以下 SQL 结构MY_TABLE
:
GROUP_LABEL | FILE | TOPIC
-----------------------------
group A | 1.pdf | topic A
group A | 1.pdf | topic B
group A | 2.pdf | topic A
group B | 2.pdf | topic B
我的任务是让这些东西按 s 分组GROUP_LABEL
,同时忘记TOPIC
文件的不同 s。所以我的预期结果是
GROUP_LABEL | COUNT(*)
----------------------
group A | 2 -- two different files 1.pdf and 2.pdf here
group B | 1 -- only one file here
在纯 SQL 中,我会这样做
SELECT GROUP_LABEL, COUNT(*) FROM (
SELECT DISTINCT GROUP_LABEL, FILE FROM MY_TABLE
);
是否可以将其转换为 JPA Criteria API 查询?在https://docs.jboss.org/hibernate/entitymanager/3.5/reference/en/html/querycriteria的 9.3.1 中,我不知道将我的内部查询放入 Criteria 查询的 from 构造中。 html似乎这是不可能的。
但我简直不敢相信;-) 以前有人这样做过吗?内部查询将通过我想要重用的各种经过良好测试的过滤谓词来丰富。
我spring-boot-starter-data : 1.5.6.RELEASE
主要使用标准配置。