比如我的表有一列叫做name,用query方法查询的时候,我想查出name为Tom和Jim和Kate的集合,发现像我下面这样写会出错,
请问应该怎么写?
Cursor cursor = db.query("table", new String[] {"*"}, "name=?", new String[] {"Tom", "Jim", "Kate"}, null, null, null);

解决方案 »

  1.   

    一个问号对应一个项你那个应该写成Cursor cursor = db.query("table", new String[] {"*"}, "name=? or name=? or name=?", new String[] {"Tom", "Jim", "Kate"}, null, null, null);不过,估计你后面的那个String[] {"Tom", "Jim", "Kate"} 是不固定的数组,那样可能用这种方式不一定能实现了
      

  2.   

    用rawQuery方法。关键字用in 例如select * from table where name in ('aa','bb');。数组长度不确定就直接字符串拼sql语句。