gpt4 book ai didi

java - Hibernate Criteria 唯一结果(键以外的列)

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

我目前正在使用 Hibernate Criteria 返回结果列表(过滤各种列值),但是有几个对象的其中一个属性具有相同的值,我只需要每个对象有一个“代表”。

例如:我返回了一个包含 3 个车辆对象的列表,ID/主键为 123、456、789,制造商代码为:111、111、222。我只想返回一个列表两个对象:123/111、789/222。

有没有办法向 Hibernate Criteria 添加限制,以便在此示例中仅返回制造商代码的唯一(或第一个)结果?如果需要任何其他信息/说明,请告诉我。

感谢您的任何建议!

最佳答案

最简单的方法是实现适当的 ResultTransformer并将其应用于您的查询。

如果你真的希望它在数据库端执行,你需要一些棘手的查询,比如这个(为简洁起见在 HQL/JPQL 中):

SELECT v FROM Vehicle v 
WHERE v.id =
(SELECT MIN(sv.id) FROM Vehicle sv WHERE sv.manufacturerCode = v.manufacturerCode)

关于java - Hibernate Criteria 唯一结果(键以外的列),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4248216/

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