我有一个 SELECT 语句,例如SELECT * FROM table where id=? and key IN (?,?..?)
. 对于 INSERT,UPDATE,我们有这个 batchWithParams,我该如何为 SELECT 执行此操作。我正在为 MySQL 数据库使用 JDBC 驱动程序。数组列表是这样的,
BATCH [[100,4,11], [150,4,12]]
我有一个 SELECT 语句,例如SELECT * FROM table where id=? and key IN (?,?..?)
. 对于 INSERT,UPDATE,我们有这个 batchWithParams,我该如何为 SELECT 执行此操作。我正在为 MySQL 数据库使用 JDBC 驱动程序。数组列表是这样的,
BATCH [[100,4,11], [150,4,12]]
为什么不直接将 ArrayList 转换为 String?像这样:
suspend fun getUsersByEmail(emails: Iterable<String>): List<User> {
return mysqlPool.getConnectionAwait().use { conn ->
conn.query(
"""
SELECT * FROM users
WHERE email IN (${emails.joinToString(separator = ", ") { "'$it'" }})
"""
).executeAwait().map { row ->
User(
row.getLong("id"),
row.getString("email")
)
}
}
}