1:不使用索引 和 使用索引的查询速度测试
测试环境:XP SP3,SQL SERVER 2005 开发版, SQL 语句 在 查询分析器里执行
A:建测试表 T_USER 字段 ID int 主键 自增, NAME nvarchar(50), SEX nvarchar(50),EMAILnvarchar(50),INFO nvarchar(50);
B:插入1万条测试数据
BEGIN
DECLARE @i int;
DECLARE @T1 nvarchar(50);
DECLARE @T2 nvarchar(50);
SET @i = 0;
SET @T1 = 'myname';
WHILE @i < 100000 BEGIN
SET @i = @i + 1;
SET @T2 = @T1 + CONVERT(nvarchar, @i);
insert into T_USER ("NAME",SEX,EMAIL,INFO) VALUES (@T2,'sex','email','info');
END
END
C:索引查询测试,以查询500数据为例
-- 500 条 无索引 1:10S, 2:12s, 3:12s, 4:12s, 5:12sBEGIN
DECLARE @i int;DECLARE @N1 nvarchar(50);DECLARE @N2 nvarchar(50);SET @i = 0;SET @N1 = 'myname';WHILE @i < 500 BEGINSET @i = @i + 1;SET @N2 = @N1 + CONVERT(nvarchar, @i);select * from dbo.T_USER where NAME = @N2;ENDEND
-- 500 条 NAME 索引 唯一 是 测试 1:2S, 2:2s, 3:2s, 4:2s, 5:2s
-- 500 条 无索引 1:13S, 2:12s, 3:12s,4:12s, 5:12s
-- 500 条 NAME 索引 唯一 是 测试 1:2S, 2:2s, 3:2s, 4:2s, 5:2s
-- 500 条 NAME 索引 唯一 否 测试 1:2S, 2:2s ,3:2s, 4:2s, 5:2s