[英]Please how do i sum up all the integer elements from a sqlite3 table row
[英]How to sum up monthly total in sqlite3
我这里有几行代码,它们能够总结month
总价值,但我要做的是总结month
并打印它们。当我更改月份的值时,它可以正常工作,但我想总结一下每月总值
example:
january = 200
february = 240
march = 310
....
december = 8764
考虑年份条件。
码
import sqlite3
conn = sqlite3.connect("test.db")
cur = conn.cursor()
cur.execute("SELECT SUM(AMOUNT) FROM `cash` WHERE strftime('%m', `DATE`) = '10'")
rows = cur.fetchall()
for row in rows:
print(row)
该表具有列name, date
和amount
,日期格式为2019-05-23, 2016-05-30
NAME DATE AMOUNT
JOE 2018-01-23 50.00
BEN 2018-01-21 61.00
FRED 2018-02-23 31.00
FRED 2018-02-03 432.00
DAN 2018-03-23 69.00
FRED 2018-03-23 61.00
BRYAN 2018-04-21 432.00
FELIX 2018-04-25 907.00
.......................
......................
是的,您需要GROUP BY
。 就像是:
SELECT strftime('%Y-%m', date) AS sales_month
, sum(amount) AS total_sales
FROM sales
GROUP BY sales_month
ORDER BY sales_month;
(使用sqlite日期和时间功能可以理解的日期格式会获得加分;太多人使用“ MM / DD / YYYY”之类的东西)
编辑:如果您有大量数据并经常运行,则可能需要使用计算索引来加快速度:
CREATE INDEX sales_idx_monthly ON sales(strftime('%Y-%m', date));
一个“分组依据”,而不是在哪里应该工作
GROUP BY strftime('%Y',`DATE`), strftime('%m',`DATE`)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.