我正在开发一个使用SQLite 3的Android 3.1平板电脑应用程序。
我有这三个表:
| Articles |
+-------------+
| articleId |
+-------------+
| description |
+-------------+
| OrdeArticle |
+-------------+
| orderId |
+-------------+
| articleId |
+-------------+
| EReportArticle |
+----------------+
| eReportId |
+----------------+
| articleId |
+----------------+
我想选择OrdeArticle
表上但不在EReportArticle
表上的所有文章。
这是我的无效 SQL语句:
SELECT
Article.articleId,
Article.description
FROM
Article,
OrdeArticle,
EReportArticle
WHERE
OrdeArticle.orderId = ? AND
Article.articleId = OrdeArticle.articleId AND
EReportArticle.eReportId = ? AND
Article.articleId != EReportArticle.articleId;
我做错了什么?
答案 0 :(得分:1)
尝试使用IN语句检查一个表中是否存在articleId而另一个表中是否存在
SELECT articleId, description
FROM Articles
WHERE articleId IN (SELECT articleId FROM OrdeArticle) AND
articleId NOT IN (SELECT articleId FROM EReportArticle)