我面临一个问题:如何使用 IN 子句将查询中的成对值的参数传递给 HQL,例如 -select id, name from ABC where (id, reg_date) in ('x', 'y')
。并且参数是不同的数据类型string(id)和reg_date(date)。
现在,在 HQL 中我可以写:
hql = "select id, Name from ABC where (id, date) in (:listparam1)"
hibernateTemplate.findbynamedparam(hql, "listparam1", values).
问题:如何在 HQL 中传递 id 和日期对的列表?两个参数具有不同的数据类型:一个是String
另一个是Timestamp
。我试过Map
以及两个值的串联Object
,二维数组,但没有任何作用。
select a.id, a.name from ABC a where a.id || '.' || a.date in (:id_date)
....并且您需要将连接 id 和名称的字符串集合作为参数“id_date”传递。如果性能是一个障碍,您可以在 SQL 数据库上创建函数索引来完成完全相同的工作(当然,如果您的数据库支持函数索引)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)