《SQL索引优化方法(实例代码)》由会员分享,可在线阅读,更多相关《SQL索引优化方法(实例代码)(3页珍藏版)》请在金锄头文库上搜索。
1、 SQL索引优化方法(实例代码)ROW_NUMBER() OVER(ORDER BY ResumeCreateTime DESC) as RowID,TopDegree,DegreeRankID,UserResume.UserResumeID,UserResume.UserID,ResumeName,BirthDate,WorkStartedDate,SalaryNeeded,BufferTimeSpanID,ResumeCreateTimeFROM dbo.UserResume INNER JOIN dbo.WorkExperience ON WorkExperience.UserResum
2、eID = UserResume.UserResumeIDWHERE(CONTAINS(WorkExperience.WorkSummary,”经理”) OR CONTAINS(UserResume.ResumeName,”简历”)第一次执行:没有建立任何索引。执行效果:表 ”Worktable”。扫描计数 0,规律读取 0 次表 ”UserResume”。扫描计数 1,规律读取 18524 次表 ”WorkExperience”。扫描计数 1,规律读取 8679 次(1 行受影响)SQL Server 执行时间:CPU 时间 = 2152 毫秒,占用时间 = 3126 毫秒。其次次执行:查看
3、执行打算WorkExperience表是表扫描,建立IX_WorkExperience索引(在ID列和JOIN 参照的ID列上)。调整后效果:表 ”WorkExperience”。扫描计数 1,规律读取 1071 次表 ”UserResume”。扫描计数 1,规律读取 18524 次(1 行受影响)SQL Server 执行时间:CPU 时间 = 1638 毫秒,占用时间 = 2045 毫秒。第三次执行:查看执行打算,UserResume表是表扫描,建立IX_UserResume索引。调整后效果:表 ”WorkExperience”。扫描计数 11,规律读取 48 次表 ”UserResume
4、”。扫描计数 1,规律读取 3095 次(1 行受影响)SQL Server 执行时间:CPU 时间 = 1248 毫秒,占用时间 = 1568 毫秒。第四次执行:查看执行打算,在IX_UserResume索引扫描后,产生了createtime列的重新排序,调整了IX_UserResume索引中createtime的位置和排序规章。调整后效果:(50 行受影响)表 ”WorkExperience”。扫描计数 11,规律读取 48 次表 ”UserResume”。扫描计数 1,规律读取 3 次(1 行受影响)SQL Server 执行时间:CPU 时间 = 15 毫秒,占用时间 = 404 毫秒。