SQLite에서 날짜 비교를 위해 현재 주를 얻으려고합니다. 나는 지난 달, 작년, 오늘, 어제에 아무 문제가 없지만 ... 이번 주에 해결책을 찾지 못했습니다.SQLite : 현재 주 취득
SELECT tastings.* FROM tastings
WHERE (DATE(tastings.date) > DATE('now','weekday 1','+ 7 days'))
당신이 날 도와 줄 수 :
내가 좋아하는 것들을 많이 시도? 감사.SQLite에서 날짜 비교를 위해 현재 주를 얻으려고합니다. 나는 지난 달, 작년, 오늘, 어제에 아무 문제가 없지만 ... 이번 주에 해결책을 찾지 못했습니다.SQLite : 현재 주 취득
SELECT tastings.* FROM tastings
WHERE (DATE(tastings.date) > DATE('now','weekday 1','+ 7 days'))
당신이 날 도와 줄 수 :
내가 좋아하는 것들을 많이 시도? 감사.tastings.date
열에 저장된 내용은 무엇입니까? SQLite는 "timestamp"타입 친 화성을 가지고 있지 않으므로 아마도 Text (날짜 표현) 또는 정수 (율리우스 요일, 시대 ...)를 저장합니다.
모든 시간 및 날짜 함수는 유효한 time string을 기대하고 그 시간을 변환합니다 문자열을 다른 문자열 형식으로 변환합니다. tastings.date
는 주 번호가 포함 된 경우 다음 사용
AND cast(tastings.date AS TEXT) = strftime('%W','now')
이렇게하면 주간을 사용하여 2 개의 날짜를 비교하는 데 도움이됩니다.
AND (strftime('%W', tastings.date) = strftime('%W', 'now'))
감사합니다.
이 코드는 당신에게 일주일의 첫날이 월요일 인 주 번호를 제공합니다. 또한 연중 마지막 주와 첫 주에 잘 작동합니다. 나는 당신이 두 날짜를 비교하려는 생각
strftime('%W', 'now', 'localtime', 'weekday 0', '-6 days')
당신은 생명을 구하는 사람입니다. PROD에서 'DATE ('now ','localtime ','weekday 1 ','- 7 days ')'를 사용하고 있었기 때문에 앱이 미쳐 버렸습니다. – faizal
,
_recordDate TEXT
당신이 코드 아래 사용할 수 있습니다 이번 주에 그 기록에 이름을하려는 경우 테이블이 _testTbl
라는 이름의 3 열 _id INTEGER
, _name TEXT
을 가지고 있다고 가정 :
SELECT * FROM _testTbl
WHERE _recordDate > datetime('now', 'start of day', 'weekday 6', '-7 day')
주 토요일 (일요일 0, 월요일 1, 7, ..., 토요일) 이번주 개시는 이 t-SQL 즉 :
datetime
은 sqlite 날짜 및 시간 함수입니다.
'now'
현재 시간을 의미한다.
일주일을 의미합니까? % W 주와 마찬가지로 00-53? –