我有一个表date, subs, unsubs
,其中date
是PK,subs
和unsubs
是该日期的订阅和取消订阅的数量。
我想添加一列来计算每天总订阅者的数量,也就是说,如果排序日期为subsall
= subsall
的最后一行+ subs
- {{ 1}}。
例如:表格是
unsubs
我想添加一个新列,表格变为
----------------
2012-01-01, 5, 2
2012-01-02, 6, 1
2012-01-03, 4, 3
----------------
执行该操作的MySQL命令是什么?
答案 0 :(得分:1)
您正在寻找累计金额。试试这个:
SELECT date, subs, unsubs, (@csum := @csum + subs - unsubs) cumulative
FROM table, (SELECT @csum :=0) c
ORDER BY date
答案 1 :(得分:0)
您应该在INSERT操作上创建触发器,请参阅手册:http://dev.mysql.com/doc/refman/5.0/en/create-trigger.html
答案 2 :(得分:0)
你可以选择两列的差异,并给它一个别名'subsall',如下所示:
SELECT date, subs, unsubs, (subs - unsubs) as 'subsall' FROM table
答案 3 :(得分:0)
SELECT (COUNT(subs) - COUNT(unsubs)) as total subscribers from table
GROUP BY DATE_FORMAT(date, '%d-%m-%Y')
希望这适合你。