来自使用NOT IN的另一个表的WHERE子句

时间:2015-09-05 22:24:13

标签: android sql sqlite where notin

我无法在sqlite android中运行查询,它抛出以下错误:

  

android.database.sqlite.SQLiteException:没有这样的表:table1.item1(代码1):,同时编译:SELECT * from table1,table2 where table1.item1 not in table2.item1

我的原始查询是:

work

字符串常量:

Database.rawQuery("SELECT * from "+ TABLE1 +", "
    +TABLE2+" where "+ TABLE1 +"" + "."+ ITEM1 +" not in "
            + TABLE2 +"."+ ITEM1, null);

我想要table1中的所有行,其item1不在table2中的item1值列表中。

我是否需要添加一些GROUP BY语句?

1 个答案:

答案 0 :(得分:2)

如果您正在寻找,那么这就是您的疑问:

SELECT * FROM table1 WHERE item1 NOT IN (SELECT item1 FROM table2)

您的“SELECT * FROM table1,table2”将为您提供table1和table2的每个返回记录的组合。这通常不是故意的。