oracle中distinct和group by的区别

如题所述

这两者本质上应该没有可比性,distinct 取出唯一列,group by 是分组,但有时候在优化的时候,在没有聚合函数的时候,他们查出来的结果也一样。

一、group by

英 [ɡru:p bai]   美 [ɡrup baɪ]  

[计][WIN]分组依据

拓展资料

1、This operator also serves as input to the Group By operator.

该操作符还充当Group By操作符的输入。

2、Complete the following steps to create and program the Group By operator. 

完成以下步骤,创建Group By操作符并对它进行配置。

3、With the appropriate access path, the ORDER BY or GROUP BY requirement can be met without sorting. 

使用恰当的访问路径,无需排序即可满足ORDER BY或GROUP BY需求。

4、Drag it to the right of the Group By operator. 

将它拖放到Group By操作符的右边。

二、distinct

英 [dɪˈstɪŋkt]   美 [dɪˈstɪŋkt]  

adj.明显的,清楚的;卓越的,不寻常的;有区别的;确切的

拓展资料

1、I have distinct memories of him in his last years. 

我清楚地记得他最后几年的情况。

2、Another Cup marathon between the two sides is now a distinct possibility. 

双方很可能再进行一场马拉松式的优胜杯比赛。

3、The photograph showed a distinct image. 

照片显出了明晰的影像。

4、I want a distinct answer to my question. 

我要求对我的问题作出明确的答复。

温馨提示:内容为网友见解,仅供参考
第1个回答  2017-09-30
group by 可以加having,对于去掉重复生的记录,有条件地进行筛选,条例条件要求的,被保留到检索结果中。
distinct仅仅是去重复,无法加入筛选条件。本回答被提问者采纳

oracle中distinct和group by的区别
这两者本质上应该没有可比性,distinct 取出唯一列,group by 是分组,但有时候在优化的时候,在没有聚合函数的时候,他们查出来的结果也一样。一、group by英 [ɡru:p bai] 美 [ɡrup baɪ][计][WIN]分组依据

DISTINCT和GROUP BY的区别
这两者本质上应该没有可比性,distinct 取出唯一列,group by 是分组,但有时候在优化的时候,在没有聚合函数的时候,他们查出来的结果也一样。一、group by英 [ɡru:p bai] 美 [ɡrup baɪ][计][WIN]分组依据

对单个字段的结果进行去重,用distinct执行效率快,还是用group by快
distinct方式就是两两对比,需要遍历整个表。group by分组类似先建立索引再查索引,所以两者对比,小表destinct快,不用建索引。大表group by快。一般来说小表就算建索引,也不会慢到哪去,但是如果是TB级大表,遍历简直就是灾难。所以很多ORACLE项目都禁止使用distinct语句,全部要求替换成group by。

DISTINCT和GROUP BY的区别
这两者本质上应该没有可比性,distinct 取出唯一列,group by 是分组,但有时候在优化的时候,在没有聚合函数的时候,他们查出来的结果也一样。一、group by英 [ɡru:p bai] 美 [ɡrup baɪ][计][WIN]分组依据

DISTINCT和GROUP BY的区别
这两者本质上应该没有可比性,distinct 取出唯一列,group by 是分组,但有时候在优化的时候,在没有聚合函数的时候,他们查出来的结果也一样。一、group by英 [ɡru:p bai] 美 [ɡrup baɪ][计][WIN]分组依据

DISTINCT和GROUP BY的区别
这两者本质上应该没有可比性,distinct 取出唯一列,group by 是分组,但有时候在优化的时候,在没有聚合函数的时候,他们查出来的结果也一样。一、group by英 [ɡru:p bai] 美 [ɡrup baɪ][计][WIN]分组依据

请教大神们讲解下distinct和group by
select distinct(id) from A;idabcde;select id from A group by id;idabcde;不同之处可能在于group by有排序功能。但是如果需要加上另一列num,结果不同。group by 是分组语句,如果用 select id,num from A group by id,num;这样的结果在本例中与不加group by...

distinct 和 group by 在查询多列数据去重复时的区别在哪
distinct只是将重复的行从结果中出去;group by是按指定的列分组,一般这时在select中会用到聚合函数。distinct是把不同的记录显示出来。group by是在查询时先把纪录按照类别分出来再查询。group by 必须在查询结果中包含一个聚集函数,而distinct不用。

group by和distinct效果一样 是这样吗
如果只是为了去重,那么意义是一样的,但是group by应用的范围更广泛一些 如分组汇总,或者从聚合函数里筛选数据等 譬如:统计每个id的个数,并且只显示个数大于3个的 select id ,count(id) from table_name group by id having count(*)>3 这个是distinct做不到的 ...

distinct和groupby一起用
这两个数据可以一起用。在数据库查询语言中,DISTINCT和GROUPBY通常用于处理重复的数据和进行数据聚合。在一个查询中同时使用这两个关键词时,以避免产生不正确的结果。DISTINCT用于从结果集中删除重复的行。会比较每一行数据与前面的行,并只保留独特的行。

相似回答