我正在使用 Tweepy API 并将推文存储在 sqlite3 数据库中。我可以使用 Tweepy 中的函数获取日期和时间。它将值存储在数据库中为
2015-06-06 23:06:19
然后我需要确定该日期的存在时间是否大于 30 天,如果是,则需要删除数据库中的行。
c.execute ("DELETE FROM storedTweets WHERE tweetDate < DATE() - 30")
这是我到目前为止所拥有的,但查询并未删除条目。
我确信这很简单,但我对此很陌生。提前致谢
最佳答案
DATE()-30
不返回日期:
sqlite> select DATE();
2015-06-06
sqlite> select DATE()-30;
1985
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])
关于python - 比较两个不同来源的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30688680/