从sATEite的DATETIME获取月份

Ili*_*ija 17 sql sqlite

我试图从DATETIMESQLite中的字段中提取月份.month(dateField)不起作用strftime('%m', dateStart).

有任何想法吗?

Mar*_*orp 32

我不明白,回答是在你的问题中:

select strftime('%m', dateField) as Month ...
Run Code Online (Sandbox Code Playgroud)


Jho*_*re- 14

SELECT strftime('%m', datefield) FROM table 
Run Code Online (Sandbox Code Playgroud)

如果您正在搜索月份名称,则SQLite的核心发行版似乎不支持文本月份名称

  • 如果datefield是本机日期时间类型,则这是不正确的.您需要使用另一个答案中提到的strftime('%m',datetime(datefield,'unixepoch')). (2认同)

小智 13

我猜你想把这个月作为一个字符串.不是最友好的外观,但你可能看到了重点.只需用变量替换日期('now')即可.

select case strftime('%m', date('now')) when '01' then 'January' when '02' then 'Febuary' when '03' then 'March' when '04' then 'April' when '05' then 'May' when '06' then 'June' when '07' then 'July' when '08' then 'August' when '09' then 'September' when '10' then 'October' when '11' then 'November' when '12' then 'December' else '' end
as month 
Run Code Online (Sandbox Code Playgroud)


小智 10

尝试使用以下内容:

select strftime('%m', datetime(datefield, 'unixepoch')) as month from table
Run Code Online (Sandbox Code Playgroud)