所以我有一个数据库表:
projectNo| process | studio | requiredNo |
---------+---------+------------+------------+
16090001 | ANM | APEX | 10 |
16090001 | ANM | BASECAMP | 10 |
16090001 | BGD | CANVAS | 15 |
16090001 | BGD | PALETTE | 15 |
我想计算所需的数字。但是当我这样做
SELECT SUM(requiredNo) FROM process WHERE projectNo='$projectNo'
我得到50。但是应该只有25,因为过程相同,但工作室不同。但是我需要按过程进行计算。那么,如何才能仅计算不同的过程?
最佳答案
select sum(mreq)
from
(
select max(requiredNo) as mreq
from process
where projectNo='$projectNo'
group by process
) tmp
内部选择为每个进程获得最高的
requiredNo
。外部选择求和。关于mysql - 仅计算不同的行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41178931/