0

我有一个这样定义的表:

db.execSQL("CREATE TABLE IF NOT EXISTS MyExercises (ID INTEGER, NAME VARCHAR, DESCRIPTION VARCHAR, VIDEONAME VARCHAR, IMAGENAME VARCHAR, VALIDFROM SMALLDATETIME, VALIDTO SMALLDATETIME, NUMOFREPS INTEGER, PRIMARY KEY(ID, VALIDFROM, VALIDTO));");

我想检查今天是否在 VALIDFROM 和 VALIDTO 之间。

当我将数据插入表格时,日期如下所示:4/7/2013 12:00:00 AM ,4/27/2013 12:00:00 AM

INSERT INTO MyExercises VALUES (1,'blalbla','blabla', 'ex1.3gp', 'ex1.jpg', '4/7/2013 12:00:00 AM', '4/27/2013 12:00:00 AM' ,5)

但是这个查询:

"SELECT NAME FROM MyExercises WHERE date('now') BETWEEN VALIDFROM AND VALIDTO"

不返回任何东西,即使今天在从和到的日期之间..

==================================================== ===================

通过将所有数据更改为 YYYY-MM-DD 格式来解决它

多谢你们!

4

2 回答 2

0
> 1.Insert two date(from,to)
> 2.Get all date between "from" and "to" date and store into arraylist or container //this step you may ignore also
> 3.check condition !from_Date.after(to_Date)

例子

于 2013-04-20T12:22:40.887 回答
0

你可以尝试使用这个

db.query("MyExercises", null, TODAY + "BETWEEN ? AND ?", new String[] {
          VALIDFROM + " 00:00:00", VALIDTO+ " 23:59:59" }, null, null, null, null);

这里 TODAY 是今天的日期

于 2013-04-20T12:25:22.100 回答