SQL Server 中如何对临时表进行排序
发表于:2024-11-22 作者:千家信息网编辑
千家信息网最后更新 2024年11月22日,这篇文章给大家介绍SQL Server 中如何对临时表进行排序,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。在SQL Server 2005/2008中,如果将有序的记录插入临时
千家信息网最后更新 2024年11月22日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安全错误
数据库的锁怎样保障安全
网络安全素材解析
战地1被提出服务器
泾县进口软件开发服务解决方案
生鲜电商软件开发费用
接收服务器管理权限
软件开发的产出物
网站打不开怎么更换服务器
昆明软件开发培训机构
德国 代理服务器
数据库部门表设计
php 日志服务器
优家园互联网科技有限公司
经营范围中的网络技术
数据库重启怎么操作
有服务器背景的电影
数据库访问限流
软件开发文档接口
服务器连接电脑显示器没反应
数据库隔离技术规范
在数据库0中检测到
天蝎整机柜服务器
提供软件开发服务怎么开票
mac 数据库客户端排行
服务器加热片
2022网络安全标题
中央控制服务器
齐齐哈尔网络安全培训
新探网络技术
网络安全中snort的研究
网络安全个人信息是什么