【问题标题】:How to sum up multiple columns records and select distinctly at the same time in one fell swoop?如何一举汇总多列记录并同时明确选择?
【发布时间】:2017-03-11 17:48:20
【问题描述】:

我有一张桌子放着这些东西

Column_1 | Column_2 | Column_3 | Column_4
------------------------------------------
John1        1         1            2        
John1        3         2            2    
John1        2         3            2    
Eric         4         2            2
Eric         4         7            2    
Christina    1         2            2
Christina    1         2            3

我想做几件事:

1) 我想获取 Column_1 中的所有记录,但我不想重复名称。例如,我知道我可以做一个SELECT DISTINCT Column_1 FROM MyTable 来实现这一点。作为回报,我会得到:John1、Eric、Christina

2) 我还想将我知道我可以通过SELECT SUM(Column_2) FROM (SELECT * FROM MyTable where Column_1 = John1 ) AS p1 完成的每一列的总数加起来,这将实现这一点。作为回报,我会得到:6

3) 我也想对 Column_3Column_4 执行相同的操作,其中 Column_1 等于上述特定条件。 p>

问题:我怎样才能在一个查询中实现所有这三个查询?

我的最终结果应该是这样的:

John1      6    6    6
Eric       8    9    4
Christina  2    4    5

【问题讨论】:

    标签: mysql sql


    【解决方案1】:

    您可以通过使用group by Column1sum() 来完成此操作。

    select 
        Column_1
      , sum(Column_2) as sumColumn_2
      , sum(Column_3) as sumColumn_3
      , sum(Column_4) as sumColumn_4
    from t
    group by Column_1
    

    rextester 演示:http://rextester.com/XACANR1610

    返回:

    +-----------+-------------+-------------+-------------+
    | Column_1  | sumColumn_2 | sumColumn_3 | sumColumn_4 |
    +-----------+-------------+-------------+-------------+
    | Christina |           2 |           4 |           5 |
    | Eric      |           8 |           9 |           4 |
    | John1     |           6 |           6 |           6 |
    +-----------+-------------+-------------+-------------+
    

    【讨论】:

    • 你先生,是救命稻草。
    • @Yusha 乐于助人!
    猜你喜欢
    • 2011-09-25
    • 1970-01-01
    • 1970-01-01
    • 2022-01-20
    • 1970-01-01
    • 1970-01-01
    • 2021-11-14
    • 1970-01-01
    • 2019-06-18
    相关资源
    最近更新 更多