java - 如何使用 "in"从 hibernate 查询中获取非不同结果

标签 java hibernate

List<Prize> prizes =
                sessionProvider.getCurrentSession().createQuery("from Prize where id in (:ids)")
                        .setParameterList("ids", prizeIds).list();

我有一个prizeId列表,它们不是唯一的。我需要为每个 id 获取奖品对象。但 hibernate 只返回给我唯一的元素列表。如何获得与输入列表大小相同的列表。

最佳答案

您得到的答案是数据库中“in”函数的默认功能。使用存在或不存在子句来检索每个 id 的记录。我怀疑你是否也可以使用存在或不存在。

但是,请确保您要实现的功能,这在大多数应用程序中并不常见

关于java - 如何使用 "in"从 hibernate 查询中获取非不同结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18918977/

相关文章:

java - 转换器影响例程自动生成的代码

java - org.hibernate.exception.SQLGrammarException : could not prepare statement

java - 如何在 Spring Boot JPA 中连接到多个数据库?

java - 在 Spring 配置 XML 文件 :org. xml.sax.SAXParseException 中获取错误

java - 如何在某些情况下忽略@SQLDelete注释

java - 线程堆栈大小与 native 内存跟踪线程堆栈大小不匹配

java - 行首 (^) 和行尾 ($) 的正则表达式边界匹配器不起作用

Java装饰的简单方法

java - 涉及HTTP Basic Authentication的文件下载

java - 父类选择查询错误+将父/子一起插入: Spring 4 Hibernate ORM