Я пытаюсь получить неделю поля Datetime с запросом SQL в браузере БД для SQLite.Определение таблицы:
CREATE TABLE "tbl_history" (_id
AUTEGINCREMENT INTEGER PRIMARY KEY, time
DATETIME DEFAULT CURRENT_TIMESTAMP, trackid
INTEGER)
Iпробовал следующее:
select trackid,
strftime('%W','now') as 'Wk',
time,
Cast(time as DATE) as Whyonlyday,
strftime('%W', time ) as error,
strftime('%W', Cast(time as DATE) ) as error1
from tbl_history
Вместо того, чтобы получать поле недели для каждой записи, которое я получаю:
trackid Wk time Whyonlyday error error1
"3" "05" "21-Jan-19 9:20 PM" "21" NULL "50"
"4" "05" "22-Jan-19 8:31 AM" "22" NULL "50"
"5" "05" "22-Jan-19 11:32 PM" "22" NULL "50"
"6" "05" "22-Jan-19 11:44 PM" "22" NULL "50"
"7" "05" "23-Jan-19 8:33 AM" "23" NULL "50"
strftime работает отлично, когда я применяю его к 'сейчас'но, как видно выше:
- Когда я приводю время в Date, я получаю только день вместо даты
- Если я применяю strftime к времени поля, я получаю Nullвместо номера недели
- Если я применяю strftime к полевому времени, приведенному в Date, я получаю 50 ... что я не знаю, откуда он берется ...