当前位置:  数据库>sqlserver

在sql中不指定Order by排序是按照主键吗

    来源: 互联网  发布时间:2014-10-14

    本文导语:  在sql中不指定Order by,排序是按照主键吗?答案是不一定。举个例子: 查询AttendanceEmpRank表,主键是AttendanceEmployeeRankId,而且是聚集索引 执行下面的语句,发现第一句不指定Order by的结果跟第二句不一样。 再看看执行计划,...

在sql中不指定Order by,排序是按照主键吗?答案是不一定。举个例子:

查询AttendanceEmpRank表,主键是AttendanceEmployeeRankId,而且是聚集索引

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

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

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

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

所以得出结论:在不指定Order by的情况下,sqlserver会根据执行计划实际查询方式来得到数据,而执行计划会根据sql中很多的因素(的查询列,where条件,order by等)而使用不同的索引,最终出来的结果很可能是不同的。


    
 
 

您可能感兴趣的文章:

  • 数据库查询排序使用随机排序结果示例(Oracle/MySQL/MS SQL Server)
  • SQL分组排序去除重复实例
  • 有关sql server的排序问题
  • Oracle 中文字段进行排序的sql语句 iis7站长之家
  • 大家讨论一下EJB QL的功能,和标准SQL相比,缺少什么功能?比如排序功能等。
  • sql分组查询(按组内个数排序)
  • SQL-ORDER BY 多字段排序(升序、降序)
  • SQL分组排序去重复的小实例
  • sql查询表中根据某列排序的任意行语句
  • sql server分组排序之row_number()over函数的使用
  • sql中获取分组排序后数据方法实例
  • sql Server使用ROW_NUMBER时不排序的实例代码
  • sql多条件多字段排序(图文教程)
  • sql语句获取分组排序后数据
  • sql union查询与排序的例子
  • SQL字符型字段按数字型字段排序实现方法
  • sql语句排序子句order by用法实例
  • sql获取分组排序后数据的脚本
  • sql server分组查询与排序的例子
  • Oracle排序分页的SQL语句问题
  • 请教:如何用shell实现指定log文件(比如a.log)中的指定内容(SQL_ID和SQL的处理部分)的收集
  • SQL Server中选出指定范围行的SQL语句代码
  • 如何实现用jsp将sql server 的数据备份出来!并指定存放路径!
  • 如何连接指定ip地址的SQL Server数据库?
  • 在linex中,定时导出sql语句的结果到指定文件中
  • mssql 指定字段编号sql语句
  • Oracle判断指定列是否全部为数字的sql语句
  • oracle中如何用PL/SQL打开一个指定的库,并在屏幕上列出库中的所有表?
  • 在j2ee的deploytool中如何指定sql server数据库的jndi?
  • SQL查询某列指定长度的字符串多余的用省略号来表示
  • MySQL中批量删除指定前缀表的sql语句
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • SQL按照日、周、月、年统计数据的方法
  • SQL按照日、周、月、年统计数据的方法分享
  • java命名空间java.sql接口statement的类成员方法: executeupdate定义及介绍
  • 请问,这是什么错误!java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][Named Pipes]??????? SQL Server?虽然分少,但一定给,只要您是前5名回复者中最好的以为!
  • java命名空间java.sql接口connection的类成员方法: nativesql定义及介绍
  • SQL查询分析工具 SQL Workbench/J
  • java命名空间java.sql接口preparedstatement的类成员方法: executeupdate定义及介绍
  • oracle导出sql语句的结果集和保存执行的sql语句(深入分析)
  • java命名空间java.sql接口rowid的类成员方法: getbytes定义及介绍
  • SQL Server统计SQL语句执行时间的脚本
  • java命名空间java.sql接口ref的类成员方法: getbasetypename定义及介绍
  • SQL客户端软件 PKLite SQL Client
  • java命名空间java.sql接口databasemetadata的类成员方法: getsqlkeywords定义及介绍
  • SQL语句实现SQL Server 2000及Sql Server 2005日志收缩(批量)
  • java命名空间java.sql接口rowid的类成员方法: tostring定义及介绍
  • SQL客户端管理工具 SQuirreL SQL Client
  • java命名空间javax.sql.rowset接口joinrowset的类成员方法: getwhereclause定义及介绍
  • 如何处理此错误:java.sql.SQLException: [Microsoft][ODBC SQL Server Driver]没有执行可选特性
  • java命名空间java.sql接口statement的类成员方法: execute定义及介绍
  • sql2005 大数据量检索分页的sql代码
  • java命名空间java.sql接口resultset的类成员方法: getcursorname定义及介绍
  • 如何实现连接一次数据库,提交多个sql语句。(sql的批处理)
  • java命名空间java.sql接口resultsetmetadata的类成员方法: getcolumntype定义及介绍
  • 微软网站下载的Ms SQL Server2000 JDBC Driver,必须用英文版的SQL server2000吗?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3