【发布时间】:2020-12-15 11:13:39
【问题描述】:
如何正确解析以这种格式存储在 Sqlite db:20200813 中的日期? 我试着这样做:
Select strftime('%Y%m%d', 20200813, 'localtime');
但它返回 Null。 我想将该列中的日期与当前日期进行比较。 如何正确操作?
【问题讨论】:
-
请阅读标签信息(stackoverflow.com/tags/sqlite/info),了解如何提供minimal reproducible example。
-
strftime() 仅将 YYYY-MM-DD 日期格式化为其他格式。您的日期不是 SQLite 的有效日期。使用 substr() 之类的字符串函数将其格式化为 YYYY-MM-DD。
-
这是一个数字,而不是要解析的字符串。只是不要像这样在 SQLite 或任何其他数据库中存储日期。在其他数据库中使用适当的
date类型。对于 SQLite,您必须使用expected formats 之一才能使用任何与日期相关的函数。 -
不是我,谁编写了这个应用程序,除了处理我拥有的东西,我别无选择。