【问题标题】:Fetch Records from SQLite Database based on Query基于查询从 SQLite 数据库中获取记录
【发布时间】: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 中添加一些换行符?

标签: android sqlite


【解决方案1】:

尝试在您要查找的值周围添加单引号。例如:...WHERE p.sent = '0'";

【讨论】:

  • 这不一定是真的。如果“sent”是一个数值,那将无济于事。
猜你喜欢
  • 2011-03-08
  • 1970-01-01
  • 1970-01-01
  • 2017-03-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-29
  • 2013-03-28
相关资源
最近更新 更多