如何从MySQL对每n条记录求和 [英] How to SUM from MySQL for every n record

查看:509
本文介绍了如何从MySQL对每n条记录求和的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我从查询中得到以下结果:

I have a following result from query:

+---------------+------+------+------+------+------+------+------+-------+
| order_main_id | S36  | S37  | S38  | S39  | S40  | S41  | S42  | total |
+---------------+------+------+------+------+------+------+------+-------+
|            26 |  127 |  247 |  335 |  333 |  223 |  111 |   18 |  1394 | 
|            26 |  323 |  606 |  772 |  765 |  573 |  312 |  154 |  3505 | 
|            38 |   25 |   35 |   35 |   35 |   20 | NULL | NULL |   150 | 
|            38 |   25 |   35 |   35 |   35 |   20 | NULL | NULL |   150 | 
|            39 |   65 |   86 |   86 |   42 |   21 | NULL | NULL |   300 | 
|            39 |   42 |   58 |   58 |   28 |   14 | NULL | NULL |   200 | 
|            35 |   11 |   20 |   21 |   18 |    9 |    2 | NULL |    81 | 
|            35 |   10 |   25 |   30 |   23 |   12 |    1 | NULL |   101 | 
+---------------+------+------+------+------+------+------+------+-------+

我想在输入不同的order_main_id之前插入一个SUM,就像这样的结果:

I would like to insert a SUM before enter different order_main_id, it would be like this result:

+---------------+------+------+------+------+------+------+------+-------+
| order_main_id | S36  | S37  | S38  | S39  | S40  | S41  | S42  | total |
+---------------+------+------+------+------+------+------+------+-------+
|            26 |  127 |  247 |  335 |  333 |  223 |  111 |   18 |  1394 | 
|            26 |  323 |  606 |  772 |  765 |  573 |  312 |  154 |  3505 |
|               |  450 |  853 | 1107 | 1098 |  796 |  423 |  172 |  4899 | 
|            38 |   25 |   35 |   35 |   35 |   20 | NULL | NULL |   150 | 
|            38 |   25 |   35 |   35 |   35 |   20 | NULL | NULL |   150 |
|               |   50 |   70 |   70 |   70 |   40 | NULL | NULL |   300 | 
|            39 |   65 |   86 |   86 |   42 |   21 | NULL | NULL |   300 | 
|            39 |   42 |   58 |   58 |   28 |   14 | NULL | NULL |   200 |
|               |  107 |  144 |  144 |   70 |   35 | NULL | NULL |   500 | 
|            35 |   11 |   20 |   21 |   18 |    9 |    2 | NULL |    81 | 
|            35 |   10 |   25 |   30 |   23 |   12 |    1 | NULL |   101 |
|               |   21 |   45 |   51 |   41 |   21 |    3 | NULL |   182 | 
+---------------+------+------+------+------+------+------+------+-------+

如何使其成为可能?

推荐答案

您需要编写第二个查询,该查询使用GROUP BY order_main_id.

You'll need to write a second Query which makes use of GROUP BY order_main_id.

类似的东西:

SELECT sum(S41+...) FROM yourTable GROUP BY orderMainId

K

这篇关于如何从MySQL对每n条记录求和的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆