问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

对单个字段的结果进行去重,用distinct执行效率快,还是用group by快

发布网友 发布时间:2022-04-11 17:58

我来回答

2个回答

热心网友 时间:2022-04-11 19:27

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

热心网友 时间:2022-04-11 20:45

distinct 和group by都需要排序,一样的结果集从执行计划的成本代价来看差距不大,但group by 还涉及到统计,所以应该需要准备工作。所以单纯从等价结果来说,选择distinct比较效率一些。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
电脑文件编辑好如何发送给微信如何把电脑上的文件发到微信上 笔记本电脑上的文件发送到微信怎么把电脑里的文件传到手机微信 我每天早晨吃米糊放白糖有害吗? 吃糖太多对我有好处么! 适合明年工作计划开头的句子 让人耳目一新的年度工作计划开头句子锦集五十四句 个人年度工作计划开头优美句子 让上司眼前一亮的工作计划开头语收藏四十一句 工作计划开头 怎么写工作计划开头 新干线0系电动列车的运行设备 如果查询多列数据,distinct怎么不起作用了?sql SQL DISTINCT 问题请教 sql高手进!关于在sqlserver里实现一个表多字段distinct查询的问题。 sql,select distinct,怎么显示多列??,怎么还是有重复的住院号? sql 语句 distinct 多列显示问题 distinct可以多列吗 distinct和groupby在查询多列数据去重复时的区别在哪 在SQL2008中,我想把其中某表的某个字段的数据类型从int改成text,可是不成功,这是为什么呢? 在Sql server 2000数据库中的表中定义的一个字段是ntext类型,但导入内容会出问题,怎么办? 加急!如何替换sql中ntext类型数据中的某个字符? SQL替换字段最后一个字符和几个字符 求SQL批量修改表里字段!!! 用sql 语句实现页数中将“128页”中的页字换掉成为“128”,哪位大侠帮帮忙了。 如何把sql2000中数据库定时同步到sql2008数据库? SQLSERVER2000 把旧数据存储到另外一个数据库中 SQL 2000 server在同一台服务器2个数据库的表同步问题 2台SQL2000数据库数据如何实时同步 ASP+SQL Server2000如何进行参数化查询 sql 已知存储过程 怎么查询哪些功能调用了这些存储过程的 SQL 检索所有存储过程中是否包含某字符 如何正确看待Linq的DistinctBy扩展和ForEach扩展 关于如何删除DataTable中的重复行 Sqlserver2012 在还原.bak文件的时候,不能选择源文件,这是怎么回事? 如果不小心删除了电脑中的*.bak文件,导致officeXP或office2003无法使用,如何解决? 急需解决:系统还原 硬盘分区情况同备份时不同,不能执行系统恢复操作! 硬盘分区情况同备份时不同,不能执行系统恢复操作 ibatis中sql.xml怎么分割字符串并循环 sqlserver语句中,怎么样将字符串'ab00000008'减去2,得到'ab00000006' c#读取xml 中的数据库连接字符串 .net 执行 sql 语句 如何在asp.net中执行sql脚本文件 C#.NET 怎么对WINDOWS的CMD命令操作 .net 执行一个sql脚本 c# .net中 对于access数据库执行sql命令 ASP.NET执行sql语句 ASP.NET怎样使用SQL语句呢? asp.net 如何一次执行多条件Sql语句,如何解决? sqlserver 自定义函数怎么接收关键字参数 存储过程数据排序问题