我正在尝试从SQLite数据库中选择数据,其中所有内容都是在一个日期发布的,无论其发布的年份如何。例如:每年7月15日在数据库中列出。
到目前为止,这是我的代码。
SELECT Date, Content FROM MYDATABASE WHERE Date = date('now')
如何制作以便当前日期的所有先前参赛作品都包括在内?
答案 0 :(得分:2)
您可以将获得的月日部分与strftime(...)
函数进行比较:
SELECT Date, Content
FROM MYDATABASE
WHERE strftime('%m%d', Date) = strftime('%m%d', date('now'))
有关日期时间功能的更多信息,请参阅文档:http://www.sqlite.org/lang_datefunc.html
请注意,要使日期和时间功能正常工作,您的日期必须以下列格式之一存储(如上面链接的文档中所述):
YYYY-MM-DD
YYYY-MM-DD HH:MM
YYYY-MM-DD HH:MM:SS
YYYY-MM-DD HH:MM:SS.SSS
YYYY-MM-DDTHH:MM
YYYY-MM-DDTHH:MM:SS
YYYY-MM-DDTHH:MM:SS.SSS
HH:MM
HH:MM:SS
HH:MM:SS.SSS
now
DDDDDDDDDD