SQL中查找多个不重复的列,用distinct还是group by速度会快一点?

peiyangxinqu 2013-05-06 01:29:38
比如一个学生表,要查找出年级,班级这两个不同字段的组合,用下面两种方式的结果是一样的,请问哪种方式比较快?
select distinct grade,class from student
select grade,class from student group by grade,class
...全文
2682 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
当然我上面指的是在A,B上建索引的时候都采用流聚集算法 ,如果没有索引的话,2个应该都会采用distinct sort,总之无论有没有索引,性能都是一样 。
  • 打赏
  • 举报
回复
性能好坏看计划,计划的本质看算法。 从算法上看,双方都是采用流聚集算法,所以性能应该是一样的。
發糞塗牆 2013-05-06
  • 打赏
  • 举报
回复
两个查询放在一个查询界面,然后按ctrl+m,再按执行,然后会有一个图形界面,百分比低的可以认为更低的开销,而通常更低的开销会更快。
peiyangxinqu 2013-05-06
  • 打赏
  • 举报
回复
引用 1 楼 maco_wang 的回复:
数据量小的时候效率差不多。 数据量大的时候看执行计划。
执行计划??
longai123 2013-05-06
  • 打赏
  • 举报
回复
delete from ........
叶子 2013-05-06
  • 打赏
  • 举报
回复
叶子 2013-05-06
  • 打赏
  • 举报
回复
数据量小的时候效率差不多。 数据量大的时候看执行计划。

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧