我使用 sqlite 数据库我想选择特定日期的一些行。 我在哪里使用 e_date 作为文本
创建表费用
(
id
整数主键自动增量,
e_type
文本不为空,
e_date
文本不为空,
e_amt
文本不为空,
e_method
文本不为空,
描述
文本
);
我尝试使用查询选择的位置
从费用中选择 *,其中 e_date 介于 31/7/2014 和 15/8/2014 之间;
但它不起作用帮我解决..
最佳答案
尝试将您的日期存储在 ISO 8601 中格式如yyyy-MM-dd
。您的两个约会的示例...
2014-07-31
2014-08-15
使用该格式意味着您实际上可以按字母数字排序并比较它们。如果您随后将查询更改为如下所示,它将起作用......
SELECT * from expenses WHERE e_date >= '2014-07-31' AND e_date <= '2014-08-15'
编辑:想一想,如果您使用 ISO 8601 格式,您实际上可以使用 SQL BETWEEN 运算符,但您必须使用单引号将字符串括起来。
SELECT * from expenses WHERE e_date BETWEEN '2014-07-31' AND '2014-08-15'
另外,只是一个提示 - 不要在第一列中使用 id
,而是使用 _id
(注意前面的“下划线”)。如果您使用各种 Android Adapter 和 AdapterView,则必须有一个名为 _id
的列。
关于java - 如何选择特定日期的某些行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25337478/