我一直在尝试将日期作为字符串存储在sqlite中,但是在查询时遇到了正确的结果。我遇到的问题似乎归结为我在sqlite和python中使用strftime得到不同的结果。我将相同的日期转换为每个秒,并获得不同的结果。
In [1]: import sqlite3
In [2]: from datetime import datetime as dt
In [3]: conn = sqlite3.connect(':memory:')
In [4]: cur = conn.cursor()
In [5]: cur.execute("select strftime('%s','2012-05-01 12:03:33')").fetchone()
Out[5]: (u'1335873813',)
In [6]: dt.strptime('2012-05-01 12:03:33', '%Y-%m-%d %H:%M:%S').strftime('%s')
Out[6]: '1335830613'
我期待两者都会给我相同的结果。我错过了什么吗?
谢谢! -Jared Kibele
答案 0 :(得分:0)
SQLite的strftime()使用UTC。 Python使用的是之前12小时(43200秒)的时区。