本文主要介绍在SQL SERVER中临时表排序问题的解决方案。通过实例代码详细介绍,对大家的学习或工作有一定的参考学习价值。需要它的朋友将和边肖一起学习。
在SQL SERVER 2005/2008中,如果将有序记录插入到临时表中,则从临时表中查询的记录是有序的(它们处于有序状态,不依赖于ORDER BY)。但是,由于SQL SERVER 2012,即使插入的记录集是有序的,查询结果也会变得无序。您需要依靠ORDER BY来获得有序的结果。例如,以下示例:
如上图,SQL SERVER 2014乱了。不知道是怎么从SQL SERVER 2012开始变得无序的,对我们来说就像一个黑匣子。我们只知道结果集发生了变化,不知道是什么内部变化导致了这种现象。使用order by子句将数据插入临时表时,表中没有记录唐山网络公司,官方论坛对此问题描述如下:
如果有特殊需要对临时表中的数据进行排序,这个问题可以通过创建聚集索引来解决。如下所示:
从系统表中选择*进入#表,其中1=0;
在#个表(名称)上创建聚集索引IDX _ #个表_名称;
插入#表从系统表中选择*按名称排序;
从#表格中选择*;
总结
关于解决SQL SERVER临时表排序问题的文章到此结束。有关SQL SERVER临时表排序问题的更多信息,请搜索Script House以前的文章或继续浏览下面的相关文章。希望大家以后多多支持脚本屋!