Sql-Server

列儲存索引中列的順序是否重要?

  • October 26, 2020

我有一個大約 2 億行和大約 15 列的表。我打算COLUMNSTORE在我的表上創建一個索引。

根據我在列儲存索引中使用的列的順序,性能是否會有任何變化?如果是,其背後的邏輯是什麼?

不,順序無關緊要。每一列都是單獨考慮的。

來自 SQL Server 團隊(已添加重點):

通常,您會希望將表中的所有列都放入列儲存索引中。 **列出列的順序無關緊要,**因為列儲存索引沒有像 B 樹索引那樣的鍵。在內部,數據將自動重新排序以獲得最佳壓縮。

順序無關緊要,如果您應該在列儲存索引中包含基表中的所有列,這有什麼關係 - 更多通過我之前對這個問題的回答here

引用自:https://dba.stackexchange.com/questions/15930