我在java程序中连接到数据库。我有一种情况需要动态传递过滤器值,过滤值取决于java代码的其他部分
示例查询:从table1中选择*,其中id为(动态和多个)?
如何使用Java连接传递这些动态和多个值。
答案 0 :(得分:0)
试试这个
String query = "select * from emp where id in(##)";
像这样创建in子句
String inClause = "'abcd', 'cedf', '1234'";
String finalQuery = query.replace("##", inClause );
答案 1 :(得分:0)
如果您使用的是iBatis,可以尝试使用以下sql查询: -
<select id="table1Result" resultMap="table1Map">
select * from table1 where id in <foreach item="item" index="index" collection="list" open="(" separator="," close=")"</select>
从java调用它时,传递一个id列表。