gpt4 book ai didi

java - Hibernate/HQL - 如何获取从数据库返回的所有重复项?

转载 作者:太空宇宙 更新时间:2023-11-04 08:56:07 26 4
gpt4 key购买 nike

我有一个包含一些重复项的表(定义为某些特定列包含相同的值)。恢复所有玫瑰的最佳方法是什么?我需要所有重复项,因此 group byhaving count() > 1* 结合使用并不是我想要的方式。

如果我的表包含以下数据

1 - foo - bar - something
2 - foo - bar - another thing
3 - foo - bar - something
4 - foo - bar - something else

我想得到返回:

1 - foo - bar - something
3 - foo - bar - something

非常感谢您的帮助!

斯特凡

最佳答案

  1. 获取 List 中的所有项目 (SELECT * FROM ..)
  2. 创建一个新的 HashBag ,在构造函数中传递列表
  3. 仅获取 getCount() 大于 1 的项目。

如果您已将一个对象映射到表,且所有属性都相同,则该对象的 equals() 方法将返回 true,这将起作用。

<小时/>

另一种方法是使用subselect 。子查询是 GROUP BY + COUNT() 查询,外部查询与子查询的结果进行比较。

关于java - Hibernate/HQL - 如何获取从数据库返回的所有重复项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2250767/

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