gpt4 book ai didi

mysql - 如何在 JPA 中创建这个 native 查询?

转载 作者:行者123 更新时间:2023-11-30 23:31:11 25 4
gpt4 key购买 nike

我在 MySQL 中有这个查询:

SELECT genre 
FROM genre g, person_genre pg, rfid rfid, room room
WHERE
pg.id_genre = g.id and
pg.id_person = rfid.id_person and
rfid.id = room.id_rfid
GROUP BY
g.genre
HAVING COUNT(*) > 1;

output: Blues, Rock

这在 mysql 查询浏览器中工作得很好,所以我试图在我的 jsf 2 中使用相同的查询和 jpa,所以我这样做了:

public List<String> getListAverageGenres(){
return em.createNativeQuery("SELECT genre " +
"FROM genre g, person_genre pg, rfid rfid, room room " +
"WHERE " +
"pg.id_genre = g.id and " +
"pg.id_person = rfid.id_person and " +
"rfid.id = room.id_rfid " +
"GROUP BY " +
"g.genre " +
"HAVING COUNT(*) > 1").getResultList();
}

Output : Blues, Rock, Blues, Rock, Blues, Rock

我不知道为什么同一个查询被调用了不止一次。我认为是因为它是 native 查询,所以我正在尝试构建一个 jpa 查询并查看它是否有效。

最佳答案

你可以试试

SELECT DISTINCT genre

关于mysql - 如何在 JPA 中创建这个 native 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10539957/

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