Sql Server性能和字段顺序

Sal*_*leh 6 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) )
Run Code Online (Sandbox Code Playgroud)

如果我改变它

create table Software(int id,alpha datetime,beta datetime,stable datetime,description nvarchar(200),title nvarchar(100) )
Run Code Online (Sandbox Code Playgroud)

有任何性能影响吗?

清楚吗?

gbn*_*gbn 4

字段顺序没有任何区别(当然,如果字段始终相同)

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

  • 标头
  • 固定长度列
  • 空位图
  • 可变长度列

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

请参阅保罗·兰德尔的文章