首页 > 解决方案 > 根据 SQL Server 版本,我们可以在 SQL Server 表上创建多少个索引?

问题描述

在每个 SQL Server 版本中,我们可以在一张表上创建多少个索引,包括聚簇索引和非聚簇索引。

标签: sql-server

解决方案


根据 SQL Server 的“最大容量规范”页面,您可以只有一个聚集索引,每个表最多可以有 999个非聚集索引。

https://docs.microsoft.com/en-us/sql/sql-server/maximum-capacity-specifications-for-sql-server?view=sql-server-2017

这适用于回到 SQL Server 2014 的版本(找不到旧版本的任何内容 - 你不应该再使用它们,无论如何!),以及 32 位和 64 位版本,并且似乎没有从版本到版本(Express、Web、Standard、Enterprise)。

但我同意@scsimon 的观点——如果你甚至远远接近这个限制——你的解决方案中就有一种巨大的设计味道!如果您甚至在单个表上处理这么多索引,则情况非常糟糕......


推荐阅读