Получить месяц с DATETIME в sqlite

Я пытаюсь извлечь месяц из поля DATETIME в SQLite. month(dateField) не работает так же, как strftime('%m', dateStart).

Любые идеи?

Ответы

Ответ 1

Я не понимаю, ответ на ваш вопрос:

select strftime('%m', dateField) as Month ...

Ответ 2

SELECT strftime('%m', datefield) FROM table 

Если вы ищете имя месяца, текстовые месячные имена, похоже, не поддерживаются основным распределением SQLite

Ответ 3

Я предполагаю, что вы хотите получить месяц как строку. Не самый дружелюбный вид, но вы, вероятно, видите это. Просто замените дату ( "сейчас" ) на свою переменную.

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 

Ответ 4

Попробуйте использовать следующее:

select strftime('%m', datetime(datefield, 'unixepoch')) as month from table

Ответ 5

Я думаю, что strftime('%m', dateStart) не работает для вас, потому что переменная dateStart имеет тип date/datetime.

Тогда вы должны использовать:

strftime('%m', date(dateStart))