【发布时间】:2016-07-27 21:27:41
【问题描述】:
我正在对来自 SQLite 数据库的fetch 数据使用以下查询,其中sent = 0 在待处理 表中
但是,问题是我得到了所有 records,即使 sent = 1
然而,我 trying 只获取那些 sent 状态为 0
String sql = "SELECT ec.visit_date, ec.mobile_id, p.mobile_id, p.sent from ectrack ec LEFT OUTER JOIN pending p WHERE ec.mobile_id = p.mobile_id and p.sent = 0";
更新:1
我也尝试过 INNER JOIN,但获取所有记录,不仅是 sent = 0 的记录,请检查我在哪里做错了?
String str = "SELECT ec.visit_date, ec.mobile_id, p.mobile_id, p.sent from ectrack ec INNER JOIN pending p ON ec.mobile_id=p.mobile_id WHERE p.sent=0";
更新:2
我尝试了以下查询以从pending 表中获取数据,仅在 sent = 0 并获取这些状态为 sent = 0 的记录> 不是每条记录
String sql = "select * from pending where sent = 0";
但是,我也必须从 ectrack 表中获取数据,就像您在我的第一个查询中看到的那样...
我必须根据 pending 表中的已发送 状态从 ectrack 表中获取数据。
【问题讨论】:
-
你真的应该学习一些 SQL 基础知识......在这种情况下:JOIN 是如何工作的,INNER 和 OUTER 之间的区别......
-
这里可以使用内连接。
-
您能否向我们展示完整的表定义并在 SQL 中添加一些换行符?