400 ~ 500 行しかないテーブルがありますが、このテーブルは頻繁にアクセスされるため、列の 1 つに非クラスター化インデックスを追加して改善を確認する必要があるかどうか疑問に思っていました。
このテーブルは常に同じデータを保持し、めったに更新されません。
これがテーブルの構造です
CREATE TABLE [dbo].[tbl_TimeZones](
[country] [char](2) NOT NULL,
[region] [char](2) NULL,
[timezone] [varchar](50) NOT NULL
) ON [PRIMARY]
このクラスター インデックスを使用すると、次のようになります。
CREATE CLUSTERED INDEX [IX_tbl_TimeZones] ON [dbo].[tbl_TimeZones]
(
[country] ASC,
[region] ASC,
[timezone] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
GO
region 列がnullになる可能性があるため、このテーブルには主キーがありません。そのため、まだキーを使用していません。
そのため、パフォーマンスを向上させるために、タイムゾーン列に非クラスターインデックスを追加したいと考えています。