我只想知道如何索引此表以获得最佳性能?这可能会保存大约 20M 行。
CREATE TABLE [dbo].[Table1](
[ID] [bigint] NOT NULL,
[Col1] [varchar](100) NULL,
[Col2] [varchar](100) NULL,
[Description] [varchar](100) NULL
) ON [PRIMARY]
基本上,只能以这种方式查询该表。
SELECT ID FROM Table1
WHERE Col1 = 'exactVal1' AND Col2 = 'exactVal2' AND [Description] = 'exactDesc'
这就是我所做的:
CREATE NONCLUSTERED INDEX IX_ID
ON Table1(ID)
GO
CREATE NONCLUSTERED INDEX IX_Col1
ON Table1(Col1)
GO
CREATE NONCLUSTERED INDEX IX_Col2
ON Table1(Col2)
GO
CREATE NONCLUSTERED INDEX IX_ValueDescription
ON Table1(ValueDescription)
GO
我对所有这些列进行索引是否正确?还没有那么自信。刚接触 SQL 的东西,如果我在正确的轨道上,请告诉我。
同样,很多数据将放在这张表上。不幸的是,由于没有可用数据,我还无法测试性能。但我很快就会生成一些虚拟数据来测试性能。但是,如果已经有另一个选项(建议)可以用来比较结果,那就太好了。
谢谢,杰克