我需要在Sqlite中按 month 进行过滤,但是STRFTIME
函数返回Null
。
日期似乎是标准格式。
SELECT arrival_date a,
departure_date d,
strftime('%m', arrival_date) m
FROM table
返回(例如):
13/02/2015, 15/02/2015, Null
有什么办法可以解决这个问题?
答案 0 :(得分:1)
SQLite的strftime
函数用于解析文本日期,执行一些操作(例如,增加几天),然后返回输出日期字符串。如果您只想提取数字月份组成部分,请使用substr
:
SELECT
arrival_date a,
departure_date d,
substr(arrival_date, 4, 2) m
FROM table;
答案 1 :(得分:0)
strftime()
和所有其他sqlite date and time functions,如果以他们不理解的格式给出参数,将返回null
。 DD/MM/YYYY
等13/02/2015
格式的日期不是一种可以理解的格式。完整列表在文档中,但是如果仅将日期存储为字符串,则需要使用YYYY-MM-DD
。