SQLite Unix 时间戳获取早于 2 天前的日期
SQLite Unix timestamp getting dates older than 2 days ago
我的 SQLite 数据库中有一个名为 created_date 的字段,我想 return 所有大于 2 天前的结果。
我运行这个:
SELECT strftime('%Y-%m-%d %H:%M:%S', "created_date"/1000, 'unixepoch')
FROM Logs
我得到的结果以正确的日期时间格式显示,但是当我将其添加到末尾时:
where created_date <= datetime('now','-2 day')
所有 10 个结果 return。
created_date, created_date as datetime
1552143373, 2019-03-09 21:44:55 55.000
1552143373, 2019-03-09 21:44:55 55.000
1552143373, 2019-03-09 21:27:38 38.000
1552143373, 2019-03-09 21:29:19 19.000
1552143373, 2019-03-09 21:30:06 06.000
1552143373, 2019-03-09 21:30:10 10.000
1552143373, 2019-03-09 21:41:28 28.000
1552143373, 2019-03-09 21:42:40 40.000
1552143373, 2019-03-09 21:43:25 25.000
1552143373, 2019-03-09 21:50:07 07.000
-2 days
- datetime 非常讲究不遗漏 's'
datetime() 函数 returns "YYYY-MM-DD HH:MM:SS" - https://www.sqlite.org/lang_datefunc.html
所以使用 strftime('%s','now','-2 days')
得到一个整数字符串进行比较。
我的 SQLite 数据库中有一个名为 created_date 的字段,我想 return 所有大于 2 天前的结果。
我运行这个:
SELECT strftime('%Y-%m-%d %H:%M:%S', "created_date"/1000, 'unixepoch') FROM Logs
我得到的结果以正确的日期时间格式显示,但是当我将其添加到末尾时:
where created_date <= datetime('now','-2 day')
所有 10 个结果 return。
created_date, created_date as datetime
1552143373, 2019-03-09 21:44:55 55.000
1552143373, 2019-03-09 21:44:55 55.000
1552143373, 2019-03-09 21:27:38 38.000
1552143373, 2019-03-09 21:29:19 19.000
1552143373, 2019-03-09 21:30:06 06.000
1552143373, 2019-03-09 21:30:10 10.000
1552143373, 2019-03-09 21:41:28 28.000
1552143373, 2019-03-09 21:42:40 40.000
1552143373, 2019-03-09 21:43:25 25.000
1552143373, 2019-03-09 21:50:07 07.000
-2 days
- datetime 非常讲究不遗漏 's'
datetime() 函数 returns "YYYY-MM-DD HH:MM:SS" - https://www.sqlite.org/lang_datefunc.html
所以使用 strftime('%s','now','-2 days')
得到一个整数字符串进行比较。