如何根据android上的时间戳删除sqlite数据库中的条目

时间:2012-10-10 14:41:21

标签: android sql sqlite

我的Android应用程序有一个SQLite数据库表,其条目如下:

USER_ID | NAME | MESSAGE | TIMESTAMP

其中时间戳以格式存储在String中:

"2012-10-10T03:14:32+0000"

我正在寻找一种方法来删除超过3天的条目。

该表一次可能少于3,000行。

我是SQL的新手,我的问题是如何在SQL中为SQLite处理这个问题?在SQL中执行此操作是否比在Java中迭代所有帖子更便宜?

1 个答案:

答案 0 :(得分:3)

您可以查看this doc

另一种方法是使用这样一个事实,即您使用的日期格式可以直接排序为字符串(词典顺序)。

  1. 在java代码中,您构建表示日期时间阈值(现在减去3天)的字符串
  2. 只需比较where子句

    中SQL中的字符串

    SELECT * 来自MyTable 在哪里TIMESTAMP> ='我用Java构建的日期'

  3. 大多数情况下,时间戳和日期时间在SQLite中存储为刻度,这涉及到int comparaison(更快)。