distinct 和 group by 在查询多列数据去重复时的区别在哪?
2016-08-05 15:39
405 查看
distinct 和 group by 在查询多列数据去重复时的区别在哪? [问题点数:40分,结帖人luxer_1985]
不显示删除回复显示所有回复显示星级回复显示得分回复
只显示楼主
收藏
关注 luxer_1985 小字 本版等级: 结帖率:100% | 楼主发表于: 2012-09-03 10:30:50 SQL code ? ? 更多0分享到: 相关知识库: Unity3D Oracle Scala Linux <iframe id="iframeu1636200_0" src="http://pos.baidu.com/kcam?rdid=1636200&dc=2&di=u1636200&dri=0&dis=0&dai=2&ps=1007x404&dcb=BAIDU_SSP_define&dtm=HTML_POST&dvi=0.0&dci=-1&dpt=none&tsr=0&tpr=1470382545707&ti=distinct%20%E5%92%8C%20group%20by%20%E5%9C%A8%E6%9F%A5%E8%AF%A2%E5%A4%9A%E5%88%97%E6%95%B0%E6%8D%AE%E5%8E%BB%E9%87%8D%E5%A4%8D%E6%97%B6%E7%9A%84%E5%8C%BA%E5%88%AB%E5%9C%A8%E5%93%AA%EF%BC%9F-CSDN%E8%AE%BA%E5%9D%9B-CSDN.NET-%E4%B8%AD%E5%9B%BD%E6%9C%80%E5%A4%A7%E7%9A%84I&ari=2&dbv=2&drs=3&pcs=1387x699&pss=1387x4840&cfv=0&cpl=4&chi=1&cce=true&cec=UTF-8&tlm=1470382545&rw=699<u=http%3A%2F%2Fbbs.csdn.net%2Ftopics%2F390198600<r=https%3A%2F%2Fwww.baidu.com%2Flink%3Furl%3DdphzhC8orJLpM0JiiTY-2nTFZ0KDggBEGZUOE0Q0QfcIu_byGQ5uaz7b9e0Lt32m%26wd%3D%26eqid%3D84ce43e1000438720000000557a44148&ecd=1&psr=1920x1080&par=1920x1040&pis=-1x-1&ccd=24&cja=false&cmi=6&col=zh-CN&cdo=-1&tcn=1470382546&qn=eea858c8595ea643&tt=1470382545689.46.342.344" width="200" height="22" align="center,center" vspace="0" hspace="0" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" allowtransparency="true" style="box-sizing: content-box; border-width: 0px; border-style: initial; vertical-align: bottom; margin: 0px;"></iframe> <iframe id="iframeu1636201_0" src="http://pos.baidu.com/kcam?rdid=1636201&dc=2&di=u1636201&dri=0&dis=0&dai=3&ps=1007x658&dcb=BAIDU_SSP_define&dtm=HTML_POST&dvi=0.0&dci=-1&dpt=none&tsr=0&tpr=1470382545707&ti=distinct%20%E5%92%8C%20group%20by%20%E5%9C%A8%E6%9F%A5%E8%AF%A2%E5%A4%9A%E5%88%97%E6%95%B0%E6%8D%AE%E5%8E%BB%E9%87%8D%E5%A4%8D%E6%97%B6%E7%9A%84%E5%8C%BA%E5%88%AB%E5%9C%A8%E5%93%AA%EF%BC%9F-CSDN%E8%AE%BA%E5%9D%9B-CSDN.NET-%E4%B8%AD%E5%9B%BD%E6%9C%80%E5%A4%A7%E7%9A%84I&ari=2&dbv=2&drs=3&pcs=1387x699&pss=1387x4840&cfv=0&cpl=4&chi=1&cce=true&cec=UTF-8&tlm=1470382545&rw=699<u=http%3A%2F%2Fbbs.csdn.net%2Ftopics%2F390198600<r=https%3A%2F%2Fwww.baidu.com%2Flink%3Furl%3DdphzhC8orJLpM0JiiTY-2nTFZ0KDggBEGZUOE0Q0QfcIu_byGQ5uaz7b9e0Lt32m%26wd%3D%26eqid%3D84ce43e1000438720000000557a44148&ecd=1&psr=1920x1080&par=1920x1040&pis=-1x-1&ccd=24&cja=false&cmi=6&col=zh-CN&cdo=-1&tcn=1470382546&qn=cb1035419e9a5a35&tt=1470382545689.77.348.350" width="200" height="22" align="center,center" vspace="0" hspace="0" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" allowtransparency="true" style="box-sizing: content-box; border-width: 0px; border-style: initial; vertical-align: bottom; margin: 0px;"></iframe> <iframe id="iframeu1636204_0" src="http://pos.baidu.com/kcam?rdid=1636204&dc=2&di=u1636204&dri=0&dis=0&dai=4&ps=1007x912&dcb=BAIDU_SSP_define&dtm=HTML_POST&dvi=0.0&dci=-1&dpt=none&tsr=0&tpr=1470382545707&ti=distinct%20%E5%92%8C%20group%20by%20%E5%9C%A8%E6%9F%A5%E8%AF%A2%E5%A4%9A%E5%88%97%E6%95%B0%E6%8D%AE%E5%8E%BB%E9%87%8D%E5%A4%8D%E6%97%B6%E7%9A%84%E5%8C%BA%E5%88%AB%E5%9C%A8%E5%93%AA%EF%BC%9F-CSDN%E8%AE%BA%E5%9D%9B-CSDN.NET-%E4%B8%AD%E5%9B%BD%E6%9C%80%E5%A4%A7%E7%9A%84I&ari=2&dbv=2&drs=3&pcs=1387x699&pss=1387x4840&cfv=0&cpl=4&chi=1&cce=true&cec=UTF-8&tlm=1470382545&rw=699<u=http%3A%2F%2Fbbs.csdn.net%2Ftopics%2F390198600<r=https%3A%2F%2Fwww.baidu.com%2Flink%3Furl%3DdphzhC8orJLpM0JiiTY-2nTFZ0KDggBEGZUOE0Q0QfcIu_byGQ5uaz7b9e0Lt32m%26wd%3D%26eqid%3D84ce43e1000438720000000557a44148&ecd=1&psr=1920x1080&par=1920x1040&pis=-1x-1&ccd=24&cja=false&cmi=6&col=zh-CN&cdo=-1&tcn=1470382546&qn=89894fde133ef2c9&tt=1470382545689.78.436.438" width="200" height="22" align="center,center" vspace="0" hspace="0" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" allowtransparency="true" style="box-sizing: content-box; border-width: 0px; border-style: initial; vertical-align: bottom; margin: 0px;"></iframe> | ||||
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理 回复次数:9 |
关注 zhangandli 人生无悔 本版等级: | #1 得分:10回复于: 2012-09-03 10:39:27 可能效率上有區別,哪個快,要具體測,測試過.在此處沒其他區別 如果有計算匯總等聚合函數(sum,avg,max,min...)在內,則就有區別了,此時只能用group by |
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理 |
关注 py418578291 ORAClE SE 本版等级: | #2 得分:5回复于: 2012-09-03 10:56:23 distinct 会启动sql引擎 distinct只是取得唯一列,group by 是分组,可以进行函数计算。 数据量大的话,一般用分组。 |
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理 |
关注 fw0124 fw0124 本版等级: | #3 得分:0回复于: 2012-09-03 10:56:51 需要聚合运算采用group by。 |
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理 |
关注 jaylongli 加油馒头 本版等级: | #4 得分:0回复于: 2012-09-03 10:59:35 可满足的要求是不一样的 |
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理 |
关注 Rexmax 睿智天成 本版等级: | #5 得分:20回复于: 2012-09-03 11:16:02 distinct只是将重复的行从结果中出去; group by是按指定的列分组,一般这时在select中会用到聚合函数。 distinct是把不同的记录显示出来。 group by是在查询时先把纪录按照类别分出来再查询。 group by 必须在查询结果中包含一个聚集函数,而distinct不用。 |
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理 |
关注 luxer_1985 小字 本版等级: | #6 得分:0回复于: 2012-09-03 11:22:18 引用 2 楼 的回复: distinct 会启动sql引擎 distinct只是取得唯一列,group by 是分组,可以进行函数计算。 数据量大的话,一般用分组。 我需要的结果:唯一列是A1,但是原表中与之关联的A2、A3列的内容也要在查询结果中体现,比如 A11,A21,A31 A11,A22,A32 A11,A21,A33 …… 而重复的(A11,A21,A31)行就被去掉了 主题中给出的两种方法都可以实现吗? 为什么Group by也可以实现去重,它的功能不只是分组吗? |
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理 |
关注 luxer_1985 小字 本版等级: | #7 得分:0回复于: 2012-09-03 11:52:21 需求中不用聚合函数 只要查出主键A1下的所有符合要求的行就行了 关键是由于联合查询,结果中可能有重复的 |
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理 |
关注 yangemil yangemil 本版等级: | #8 得分:5回复于: 2012-09-04 15:15:06 引用 5 楼 的回复: distinct只是将重复的行从结果中出去; group by是按指定的列分组,一般这时在select中会用到聚合函数。 distinct是把不同的记录显示出来。 group by是在查询时先把纪录按照类别分出来再查询。 group by 必须在查询结果中包含一个聚集函数,而distinct不用。 正解!! |
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理 |
关注 yjytiantang yjytiantang 本版等级: | #9 得分:0回复于: 2012-09-04 15:38:44 引用 6 楼 的回复: 引用 2 楼 的回复: distinct 会启动sql引擎 distinct只是取得唯一列,group by 是分组,可以进行函数计算。 数据量大的话,一般用分组。 我需要的结果:唯一列是A1,但是原表中与之关联的A2、A3列的内容也要在查询结果中体现,比如 A11,A21,A31 A11,A22,A32 A11,A21,A33 …… 而重复的(A11,A21,A…… 你是按 a1,a2,a3分的组,相当于去重了,你要是 group by a1 ; 或者 group by a1,a2 ; 差别就出来了。 |
相关文章推荐
- Java Web开发-简单的Java Web项目(含访问本地MySQL)-应用例程
- 区间操作(线段树、树状数组、懒人标记、RMQ算法)
- 每天一个Linux命令(2)- find
- Spark ML包随机森林回归
- [置顶] iOS调用WebService(SOAP接口)
- 练手python_随机生成200个获奖码
- int、long、long long取值范围 实例: 判断是否超出整形范围
- 各种Mutex(互斥量)的区别
- 练手python_ 将条形码保存在redis数据库中
- AngularJS使用orderBy报错
- 基于时间延迟的Python验证脚本
- 项目反思
- class.c 添加中文注释(1)
- 设计模式:adapter适配器
- 设置注释
- 简单实现二维码扫描
- Android之Dialog
- 测试
- 程序员常用的网站和博客
- 练手python_将条形码保存在mysql数据库中