【问题标题】:SQLite current date and current date in past yearsSQLite 当前日期和过去几年的当前日期
【发布时间】:2012-07-15 05:42:59
【问题描述】:

我正在尝试从 SQLite 数据库中选择数据,其中所有内容都在一个日期发布,无论其发布年份如何。例如:数据库中列出的每年 7 月 15 日。

这是我目前的代码。

SELECT Date, Content FROM MYDATABASE WHERE Date = date('now')

如何才能使当前日期的所有先前条目也包括在内?

【问题讨论】:

  • where day(date) = day(date('now')) and month(date) = month(date('now')) 或附近?
  • Marc,这会导致“没有这样的功能:天”错误。

标签: sqlite titanium


【解决方案1】:

你可以用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

【讨论】:

  • Ludo,而您的代码在 SQLite 管理器中运行良好;它会在钛中生成以下错误:“Uncaught SyntaxError: Unexpected String.”
猜你喜欢
  • 1970-01-01
  • 2012-08-21
  • 1970-01-01
  • 1970-01-01
  • 2023-03-07
  • 1970-01-01
  • 1970-01-01
  • 2018-11-04
  • 1970-01-01
相关资源
最近更新 更多