JdbcTemplate IN Clause for String elements
27,799
There a few other similar questions out there which might have helpful answers for you:
How to execute IN() SQL queries with Spring's JDBCTemplate effectivly?
To make this style of query work on my end, I have to switch from plain old JDBCTemplate to NamedParameterJdbcTemplate
.
Here is some example code:
String query = "select * from table where columnName in (:listOfValues)";
List<String> nameRecordIDs = new ArrayList<String>();
// ...
// add values to collection, then
// ...
Map namedParameters = Collections.singletonMap("listOfValues", nameRecordIDs);
namedparameterJdbcTemplate.query(query, namedParameters,new MyMapper());
Author by
SriHarish
Updated on July 21, 2020Comments
-
SriHarish almost 4 years
Am using
NamedParameterJdbcTemplate
for where Clause elements and one of them seems to beList<String>
.JdbcTemplate
replaces them ?,?,?...(list size) but for a IN clause withList<String>
it has to be '?','?'....Is there a way around this?