SQLite - 检查时间是否超过一个月前

时间:2014-06-15 17:02:23

标签: java sql sqlite

检查DATETIME(TIME)是否超过一个月前

这是我要做的更新:

DELETE FROM BLOCKDATA WHERE TIME <= DATEADD(MONTH, -1, GETDATE());

但它失败并出现错误:

No such column: month

表格:

      String sql = "CREATE TABLE BLOCKDATA " +
              " (ID    INTEGER PRIMARY KEY, " + 
              " PLAYERID           TEXT    NOT NULL, " +
              " TIME           DATETIME    NOT NULL, " + 
              " LOCATION           TEXT    NOT NULL, " + 
              " ACTION            TEXT     NOT NULL, " + 
              " SPECIAL        TEXT, " + 
              " SPECIAL2         TEXT)"; 

我正在使用Java。

1 个答案:

答案 0 :(得分:1)

SQLite没有DATEADD。

您必须为date functions之一使用修饰符:

... WHERE time <= date('now', '-1 month')

(使用哪个功能取决于time列中的实际格式。)