繁体   English   中英

在MySQL中使用Groupby Sum?

[英]Groupby Sum in mySQL?

我的表如下:

DeviceNumber  PayWay  Money

   000001       A       1
   000002       B       2
   000001       A       1
   000001       B       1.2
   000002       A       2.6

我想得到结果:

   DeviceNumber  Total   A      B
     000001      3.2    2      1.2
     000002      4.6    2.6    2

有没有SQL可以做到这一点? 非常感谢你!

SELECT DeviceNumber,  SUM(CASE WHEN PayWay='A' THEN Money  END) A,
SUM(CASE WHEN PayWay='B' THEN Money END) B,SUM(Money) TOTAL FROM TABLE
GROUP BY DeviceNumber  

您可以尝试上述查询。

是的,您可以像这样使用SUM和CASE

SELECT DeviceNumber,sum(money) as Total,
    SUM(
        CASE 
            WHEN PayWay='A' THEN Money ELSE 0
        END) as A,
    SUM(
        CASE 
            WHEN PayWay='B' THEN Money ELSE 0
        END) as B
FROM MyTable
GROUP BY DeviceNumber
ORDER BY DeviceNumber

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2025 STACKOOM.COM