【发布时间】:2019-11-12 21:04:42
【问题描述】:
我的数据以这种格式存储在 SQLITE3 数据库中:
id | ts | data ...
475158|2019-11-12 07:50:00 | ...
所以我以前按日、月、年分组,例如:
SELECT STRFTIME("%Y-%m", ts), SUM(<data in my table>)
FROM ( <my table> )
GROUP BY STRFTIME("%Y-%m", ts)
ORDER BY ts
现在我也想做同样的事情,但基于周年纪念日。
例如,如果周年纪念日是 2010 年 11 月 17 日,我想得到一个按年份分组但介于 'YYYY'-11-17 和 'YYYY+1'-11-16 之间的结果
例子:
2017 |sum of data between 2016-11-17 & 2017-11-16
2018 |sum of data between 2017-11-17 & 2018-11-16
2019 |sum of data between 2018-11-17 & 2019-11-16
容易吗?
【问题讨论】:
-
试试这个:SELECT STRFTIME("%Y-%m", ts) as avYear, SUM() FROM (
) GROUP BY avYear ORDER BY ts
标签: sqlite