<分区>
我可以做这样的事情吗:
select * from mytable m where m.group_id in (?)
... 并传入要扩展到我的参数的参数列表或数组,即:
select * from mytable m where m.group_id in (1,2,3,4)
具体来说,我正在使用 Spring 和 JdbcTemplate/SimpleJdbcTemplate 类。
<分区>
我可以做这样的事情吗:
select * from mytable m where m.group_id in (?)
... 并传入要扩展到我的参数的参数列表或数组,即:
select * from mytable m where m.group_id in (1,2,3,4)
具体来说,我正在使用 Spring 和 JdbcTemplate/SimpleJdbcTemplate 类。
最佳答案
您可以使用 NamedParameterJdbcTemplate 来完成。
对于您的示例,它会是这样的:
NamedParameterJdbcTemplate db = ...;
List paramList = ...;
Map idsMap = Collections.singletonMap("ids", paramList);
db.query("select * from mytable m where m.group_id in (:ids)", idsMap);
关于java - 我可以要求 JDBCTemplate 扩展列表参数以在 in() 子句中使用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3613881/