sql-server - SQL Server 2005 和 SQL Server 2012 中选择查询的默认排序顺序

标签 sql-server sorting sql-server-2005 sql-server-2012

SQL Server 2005 和 SQL Server 2012 中选择查询的默认排序顺序有区别吗?

我有一个没有主键的表变量。当我在 SQL Server 2005 中对表变量执行选择查询时,将选择记录并根据其中一列按字母顺序显示。在 SQL Server 2012 中,记录的显示顺序与父表中的顺序相同。

最佳答案

没有默认的排序顺序。除非您在 ORDER BY 子句中指定它,否则不能保证结果始终以相同的方式返回。

您可能会发现结果是按 PK 或聚集索引排序的,但情况并非总是如此。

<小时/>

您可能想阅读以下内容:

Without ORDER BY, there is no default sort order by Alexander Kuznetsov

关于sql-server - SQL Server 2005 和 SQL Server 2012 中选择查询的默认排序顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36077399/

相关文章:

sql-server - SQL Server 2005批量插入二进制类型

sql-server - SQL Server 架构和默认架构

sql-server - 如果里面的字符串比最大长度短,一个 nvarchar 列占用多少磁盘空间

Javascript 排序是 'unstable' - 我该如何解决这个问题?

c++ - 通过两个参数对指针 vector 进行排序

c# - 防止 SELECT 语句中的 SQL 注入(inject)

sql-server-2005 - 帮助 !如何从我的 SQL Server 分页过程中获取总行数?

.net - 更新 EF 模型 : tables missing

sql - 基于多个 child 配对的 parent 计数

java - 排序数组不起作用