mysql> select * from Odetails;
+------+-------+------+
| ONO | PNO | QTY |
+------+-------+------+
| 1020 | 10506 | 1 |
| 1020 | 10508 | 2 |
| 1020 | 10509 | 3 |
| 1020 | 10800 | 1 |
| 1021 | 10506 | 7 |
| 1021 | 10601 | 4 |
| 1022 | 10601 | 1 |
| 1022 | 10701 | 1 |
| 1023 | 10506 | 2 |
| 1023 | 10800 | 1 |
| 1023 | 10900 | 1 |
| 1024 | 10506 | 12 |
| 1025 | 10601 | 2 |
+------+-------+------+
13 rows in set (0.00 sec)
我需要计算每个部分的QTY数量。部分重复。例如,10506出现4次,数量为22.所以在我的表中我希望它看起来像
10506 22
我只能计算各行数。我已经查看了如何获取数量,而不是行,但它似乎不起作用。 这是我一直在尝试的:
select PNO, (count(QTY)*count(PNO)) as TOTAL from Odetails group by PNO;
select PNO, count(*) as TOTAL from Odetails group by PNO;
这只是给出了行出现的次数 虽然。
答案 0 :(得分:1)
简单。使用GROUP BY
和SUM
select pno, sum(qty) total
from Odetails
group by pno;