比较来自两个不同来源的日期

时间:2015-06-06 23:48:31

标签: python python-2.7 sqlite

我正在使用Tweepy API并将推文存储在sqlite3数据库中。我可以使用Tweepy中的函数获取日期和时间。它将值存储在数据库中

2015-06-06 23:06:19

然后,我需要确定此日期的年龄是否大于30天,如果需要,则需要删除数据库中的行。

c.execute ("DELETE FROM storedTweets WHERE tweetDate < DATE() - 30")

这是我到目前为止,但查询不是删除条目。

我确信这很简单,但我是新手。提前致谢

1 个答案:

答案 0 :(得分:3)

DATE()-30不会返回日期:

sqlite> select DATE();
2015-06-06
sqlite> select DATE()-30;
1985

但是using the date function

sqlite> select date('now','-30 days'); 
2015-05-07

因此,

c.execute("DELETE FROM storedTweets WHERE tweetDate < date('now','-30 days')")

或者,您可以使用Python计算日期:

import datetime as DT
date = DT.date.today()-DT.timedelta(days=30)
c.execute("DELETE FROM storedTweets WHERE tweetDate < ?", [date])