关于group by

程序员成长之旅 · 程序员成长之旅/SQL SERVER · 206 字

可以理解group by是对数据进行分组, 所谓分组就是将一个数据集划分成若干个小区域, 然后针对若干个小区域进行数据处理

我的理解就是, 先对原始数据根据group by条件进行划分, 然后针对每一个划分做单独处理.


类别    数量    摘要

a     5       a2001

a     2       a2002

b     4       b2001

b     6       b2001

b     2       b2001

c     9       c2001

执行

select 类别, sum(数量) as 总数

from A

group by 类别

执行step 1

类别    数量 数量

a     5     2

类别    数量 数量 数量

b     4     6   2

类别    数量

c     9

执行step 2

类别    数量 数量

a     5 + 2

类别    数量 数量 数量

b     4 + 6 + 2

类别    数量

c     9

执行step 3

类别    数量 数量

a     7

b     12

c     9