【发布时间】: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_3 和 Column_4 执行相同的操作,其中 Column_1 等于上述特定条件。 p>
问题:我怎样才能在一个查询中实现所有这三个查询?
我的最终结果应该是这样的:
John1 6 6 6
Eric 8 9 4
Christina 2 4 5
【问题讨论】: