首页 > 解决方案 > 使用 Hibernate 管理或拆分一长串 SQL IN 参数

问题描述

在某些 SQL 变体(尤其是Oracle)中,可以传递给IN语句的参数数量是有限的。即以下行不通;

select * from molecules where id in (atom_1, atom_2, atom_3, ... atom_785534);

已经提出了多种解决方案,包括使用临时表将参数分成更小的组

ORM,特别是 Hibernate 5+ 的最佳解决方案是什么?据我所知,不可能使用 Hibernate 创建一个临时表,并且循环遍历块并不理想,特别是当您可能有多个参数列表存在溢出限制的风险时。

标签: sqlhibernate

解决方案


推荐阅读