我通过执行查询得到List<Strings>
。这必须传递给 IN 子句值的另一个查询。如何在总部通过它们?
我们可以将List
转换为Array
并可以通过它,这不是问题。
最后,我必须以List<String>
或Array
或String
形式将列表传递给 IN 子句。
from AUTOS a where a.model in (select m.model from MODELS m)
或
Query query1 = session.createQuery("select s.id from Salary s where s.salary < 50000 AND s.salary > 49980");
Query query2 = session.createQuery("from Employee e where e.id in (:ids)").setParameterList("ids", query1.list());
query2.list();
我知道
已经有一段时间了,您一直在尝试将不同查询的值作为 queryParameter 传递,您也可以使用 'elements()' 将 set 或集合传递给 HQL 中的 in 子句 - 这是这种用法的一个简单示例:休眠查询:集合是否包含某个对象?