如何在flutter上查询sqflite多个whereArgs?

pho*_*ong 2 sql sqlite dart flutter sqflite

如何查询多个 whereArgs?我总是返回 1 行。它应该返回 3 行。

final res = await db.query(
  Constants.dbTable, 
  where: "name = ?",
  whereArgs: ['read', "uio", 'go'],  
);
Run Code Online (Sandbox Code Playgroud)

Ale*_*pov 7

尝试使用 IN 子句:

final res = await db.query(
  Constants.dbTable, 
  where: "name IN (?, ?, ?)",
  whereArgs: ['read', 'uio', 'go'],  
);
Run Code Online (Sandbox Code Playgroud)

更新!

对于动态,List<String> names您可以尝试使用这种方法:

final res = await db.query(
  Constants.dbTable, 
  where: "name IN (${('?' * (names.length)).split('').join(', ')})",
  whereArgs: names,  
);
Run Code Online (Sandbox Code Playgroud)