您现在的位置是:网站首页> 编程资料编程资料
在sql中不指定Order by排序是按照主键吗_MsSql_
2023-05-26
458人已围观
简介 在sql中不指定Order by排序是按照主键吗_MsSql_
在sql中不指定Order by,排序是按照主键吗?答案是不一定。举个例子:
查询AttendanceEmpRank表,主键是AttendanceEmployeeRankId,而且是聚集索引

执行下面的语句,发现第一句不指定Order by的结果跟第二句不一样。

再看看执行计划,我们可以知道,第一句用到的是Date索引,而第二句用的是主键索引.

再看看另一组sql和查询结果:

执行计划中用到的索引也是不同的:

所以得出结论:在不指定Order by的情况下,sqlserver会根据执行计划实际查询方式来得到数据,而执行计划会根据sql中很多的因素(的查询列,where条件,order by等)而使用不同的索引,最终出来的结果很可能是不同的。
相关内容
- SQL Server两种分页的存储过程使用介绍_MsSql_
- CASE表达式实现基于条件逻辑来返回一个值_MsSql_
- SQLSERVERAGENT警告:事件 ID: 312_MsSql_
- SQLSERVER中忽略索引提示_MsSql_
- 总结下sqlserver group by 的用法_MsSql_
- sqlserver 增删改查一些不常用的小技巧_MsSql_
- Sql Server中常用的6个自定义函数分享_MsSql_
- SQL Server中发送HTML格式邮件的方法_MsSql_
- SQL Server 监控磁盘IO错误,msdb.dbo.suspect_pages_MsSql_
- SQL Server 提取数字、提取英文、提取中文的sql语句_MsSql_
