Sql Server性能和字段顺序

时间:2011-04-30 04:17:30

标签: sql-server sql-server-2005 sql-server-2008

表格中创建字段的顺序会影响表格上命令的性能吗? 如果答案是肯定的,那么有人可以讨论吗?

例如,我创建了一个这样的表

create table Software(int id,alpha datetime,beta datetime,title nvarchar(100),stable datetime,description nvarchar(200) )

如果我将其更改为

create table Software(int id,alpha datetime,beta datetime,stable datetime,description nvarchar(200),title nvarchar(100) )

有性能影响吗?

是否清楚?

3 个答案:

答案 0 :(得分:4)

字段订单使没有任何区别(如果字段总是相同的话)

无论如何,磁盘上的结构都会保持不变。简单地:

  • 固定长度列
  • null位图
  • 可变长度列

您在上面所做的只是在“固定长度”和“可变长度”部分内重新排列一些列。但是,无论它们处于何种顺序,都需要进行相同的处理来检索它们。

请参阅Paul Randal's article

答案 1 :(得分:3)

没有。这不会影响性能。

答案 2 :(得分:-3)

现场订单可能会对性能产生非常微妙的影响,以及维护操作必须经常发生的频率。在宏伟的计划中,将更好地利用您的时间:

  • 构建/测试索引
  • 重组查询
  • 分区表(水平和垂直)
  • 更改文件组架构

这不是一份详尽的清单。

你没有提到你是否已经调整了这些东西,并且还需要在这个过程中挤出一些额外的ms。