SQL Server 中如何对临时表进行排序
发表于:2025-11-15 作者:千家信息网编辑
千家信息网最后更新 2025年11月15日,这篇文章给大家介绍SQL Server 中如何对临时表进行排序,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。在SQL Server 2005/2008中,如果将有序的记录插入临时
千家信息网最后更新 2025年11月15日SQL Server 中如何对临时表进行排序
这篇文章给大家介绍SQL Server 中如何对临时表进行排序,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
在SQL Server 2005/2008中,如果将有序的记录插入临时表,则从临时表查询出来的记录是有序的(不依赖ORDER BY也是有序状态),但是从SQL SERVER 2012开始,即使插入的记录集有序,查询出来的结果变成无序了。需要依赖ORDER BY来或得到一个有序结果。例如下面例子:
SELECT * INTO #tables FROM sys.tables ORDER BY name; SELECT * FROM #tables;
如上所示,SQL SERVER 2014则是无序状态,我很是奇怪怎么从SQL SERVER 2012就开始变成无序了,这对我们来说犹如一个黑盒子,只知道结果集出现了变化,但是不知道内部啥变化导致这个现象出现。Records not sorted in the table when using ORDER BY clause to insert data into Temp Table 官方论坛对这个问题的描述如下:
官方的答复不是很明确,但是毋庸置疑的是,肯定是临时表的内部存储或实现有所变化,导致临时表中的数据不再默认有序,但是SQL Server不是开源数据库,如果官方文档不披露这些细节信息,很多东西无从得知真正的root cause!
如果有特殊的需要,要求临时表里面的数据有序,则可以通过创建聚集索引来解决这个问题。如下所示:
SELECT * INTO #tables FROM sys.tables WHERE 1= 0; CREATE CLUSTERED INDEX IDX_#tables_NAME ON #tables(name); INSERT INTO #tables SELECT * FROM sys.tables ORDER BY name; SELECT * FROM #tables;
关于SQL Server 中如何对临时表进行排序就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
有序
官方
数据
结果
变化
排序
内容
更多
状态
问题
帮助
查询
不错
特殊
东西
例子
信息
兴趣
可以通过
如上
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
加强网络安全的实施意见
中山灌胶机点胶软件开发
自己练习用的数据库怎么安装
网络安全证书认证
手游无法连接服务器是什么意思
深圳市罗太互联网科技有限公司
广东企业软件开发费用
普陀区创新软件开发厂家销售价格
东北证券 软件开发 待遇
万国觉醒怎么看服务器缺号
java预约时段数据库实现
不同项目怎么互通数据库
重庆开县生鲜电商软件开发
网络安全资产排查
网站如何选择服务器
浪潮服务器什么时候上市
远程服务器设置花生壳
计算机网络技术与应用罗建航
数据库新建表在哪里新建
崇明区新能源软件开发要多少钱
竞态条件 网络安全
小型网上书店软件开发计划书
计算机网络技术学院本科排名
国泰安数据库兼任类型
数据库优化有哪些方法
服务器开机后让选择键盘布局
用友t3配置非本机数据库
合肥拓信网络技术有限公司
软件开发专业需要什么证书
专职网格员网络安全