SQLite 按照日期分組
阿新 • • 發佈:2019-02-04
使用這個format ('%Y-%m-%d')來查詢對應的年月日的分組
查詢2015年的所有資料
select*from mytable wherestrftime('%Y',
datatime) = '2015'
查詢2015年9月的所有資料(注意格式一定要是yyyy-MM, 不能使用2015-9)
select*from mytable wherestrftime('%Y-%m',
datatime) = '2015-09'
查詢2015年9月23號的所有資料同理推斷為
select*from mytable wherestrftime('%Y-%m-%d',
datatime) = '2015-09-23'
以下這個語句是:取出月份,並加上2個月的查詢結果,滿足程式碼中迴圈的需要
select * from mytable where strftime('%m', datatime, '+2 months') = '12'
以下的資料就可以滿足按照年來進行分組查詢
SELECT count(*) from mytable GROUP BY strftime('%Y', datatime)
以下可以實現查詢資料庫表中有幾個不同的年份
SELECT DISTINCT strftime('%Y', TimeField) as year from YourTable-
strftime時間字串格式化
- %d dayofmonth: 00
- %f fractional seconds: SS.SSS
- %H hour: 00-24
- %j dayofyear: 001-366
- %J Julian day number
- %m month: 01-12
- %M minute: 00-59
- %s seconds since 1970-01-01
- %S seconds: 00-59
- %w dayof week 0-6 with Sunday==0
- %W week ofyear: 00-53
- %Y year: 0000-9999
- %%%
- 以下結果是等價的
-
date(...) <
- time(...) <---> strftime('%H:%M:%S', ...)
- datetime(...) <---> strftime('%Y-%m-%d %H:%M:%S', ...)
- julianday(...) <---> strftime('%J', ...)
- 再看看修飾符:
- 1. NNN days --加或減N天
- 2. NNN hours ----加或減N小時
- 3. NNN minutes --加或減N分鐘
- 4. NNN.NNNN seconds ----加或減N秒
- 5. NNN months --加或減N月
- 6. NNN years --加或減N年
- 7. start ofmonth--一月的開始的時間
- 8. start ofyear--一年開始的時間
- 9. start ofday--一天開始的時間
- 10. weekday N --檢視本週禮拜N是那天, 1,2,3,4,5,6,0分別代表禮拜一到禮拜天,禮拜天