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"

今日は from と to の日付の間にありますが、何も返されません。

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

すべてのデータをYYYY-MM-DD形式に変更することで解決しました

みんなありがとう!

4

2 に答える 2

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 に答える