在SQL中的行条件上对列进行求和

时间:2016-03-18 18:38:50

标签: postgresql sum totals

我有一个名为'Name'的列,带有分类数据,另一列名为'Total',每个类别中有一个总数。

我想总结几个分组名称的总数:

例如:名称(苹果,香蕉,芹菜,豆类);总计(300,408,350,250) 我想计算水果的总和,即总和(苹果+香蕉)&蔬菜总和(芹菜+豆类)分开。

我如何做到这一点是Postgre SQL

1 个答案:

答案 0 :(得分:2)

尝试条件SUM

 SELECT SUM( CASE WHEN Name IN ('apple', 'banana', 'celery', 'beans') THEN Total
                                                                      ELSE 0
             END) AS ap_ba_ce_be_total,

        SUM( CASE WHEN Name IN ('apple', 'banana') THEN Total
                                                   ELSE 0
             END) AS ap_ba_total 
 FROM YourTable