DISTINCT和GROUP BY的区别
2008-11-20 12:05
441 查看
其实二者没有什么可比性,但是对于不包含聚集函数的GROUP BY[/b]操作来说,和DISTINCT[/b]操作是等价的。不过虽然二者的结果是一样的,但是二者的执行计划并不相同。
distinct只是将重复的行从结果中出去;
group by[/b]是按指定的列分组,一般这时在select中会用到聚合函数。
distinct是把不同的记录显示出来。
group by[/b]是在查询时先把纪录按照类别分出来再查询。
group by[/b] 必须在查询结果中包含一个聚集函数,而distinct[/b]不用。
--每个部门有多少钱
select sum(钱),部门 from table
group by[/b] 部门
结果:部门1 130
部门2 100
--把相同的记录不显示出来,只选择此两列唯一的
select distinct[/b] 部门,钱 from table
结果:部门1 100
部门1 15
部门2 100
--而实际此表存在的记录如下:select * from table
结果:部门1 100
部门1 15
部门1 15
部门2 100
仔细比对一下,就清楚了。
distinct只是将重复的行从结果中出去;
group by[/b]是按指定的列分组,一般这时在select中会用到聚合函数。
distinct是把不同的记录显示出来。
group by[/b]是在查询时先把纪录按照类别分出来再查询。
group by[/b] 必须在查询结果中包含一个聚集函数,而distinct[/b]不用。
--每个部门有多少钱
select sum(钱),部门 from table
group by[/b] 部门
结果:部门1 130
部门2 100
--把相同的记录不显示出来,只选择此两列唯一的
select distinct[/b] 部门,钱 from table
结果:部门1 100
部门1 15
部门2 100
--而实际此表存在的记录如下:select * from table
结果:部门1 100
部门1 15
部门1 15
部门2 100
仔细比对一下,就清楚了。
相关文章推荐
- group by与distinct有何区别
- group by与distinct的区别
- group by与distinct有何区别
- Sql distinct和group by的区别
- SQL中Distinct和group by性能区别
- mysql distinct 与 group by 的区别
- MySQL数据库与其他数据库的3个常用语法区别(外链接、分组排序row_number() over(partition by ) 、group by和distinct)
- (转)数据库 distinct 和 group by 的区别
- DISTINCT和GROUP BY的区别
- DISTINCT和GROUP BY的区别
- DISTINCT和GROUP BY的区别
- DISTINCT和GROUP BY的区别
- Distinct 和Group by的区别
- distinct 和 group by 在查询多列数据去重复时的区别在哪?
- distinct的讲解以及与Group By的区别
- sql左外连接、右外连接、group by、distinct(区别)、intersect(交叉)、通配符、having
- mysql联合查询是用DISTINCT和GROUP BY之间的性能区别
- mysql distinct 与 group by 的区别
- oracle中distinct和group by的区别
- DISTINCT和GROUP BY的区别