MS SQL Server Concepts and Programming Question:

Download Job Interview Questions and Answers PDF

Does Index Speed Up SELECT Statements?

MS SQL Server Interview Question
MS SQL Server Interview Question

Answers:

Answer #1
If you want to see the impact of indexes on SELECT statements, you can run the same SELECT statement on "ggl_links" and "ggl_links_indexed" tables. See the tutorial exercise below:

USE GlobalGuideLineDatabase;
GO

-- Run SELECT on the table without indexes
DECLARE @start_time DATETIME, @end_time DATETIME;
SET @start_time = GETDATE();
SELECT TOP 3 counts, url FROM ggl_links
WHERE url LIKE 'a%'
ORDER BY counts DESC;
SET @end_time = GETDATE();
PRINT 'Milliseconds used: '+CONVERT(VARCHAR(20),
DATEDIFF(MILLISECOND,@start_time,@end_time));
GO
<pre>counts url
----------- ------------------------------------------------
999417 a ihgu migox mlqvi gvs n nmabwdk iehu ezjjv n l
999008 agqbr gkjwfpjvp z c cq k inen j ppjsu x iuk uhp
998471 a yiu squqco eih
</pre>
Milliseconds used: 46



Answer #2
-- Run SELECT on the table with indexes
DECLARE @start_time DATETIME, @end_time DATETIME;
SET @start_time = GETDATE();
SELECT TOP 3 counts, url FROM ggl_links_indexed
WHERE url LIKE 'a%'
ORDER BY counts DESC;
SET @end_time = GETDATE();
PRINT 'Milliseconds used: '+CONVERT(VARCHAR(20),
DATEDIFF(MILLISECOND,@start_time,@end_time));
GO
<pre>counts url
----------- ------------------------------------------------
999417 a ihgu migox mlqvi gvs n nmabwdk iehu ezjjv n l
999008 agqbr gkjwfpjvp z c cq k inen j ppjsu x iuk uhp
998471 a yiu squqco eih
</pre>
Milliseconds used: 0

The test result shows indexes on "url" and "counts" did improve the SELECT statement from 46 milliseconds to almost 0 millisecond.

Download MS SQL Server Interview Questions And Answers PDF

Previous QuestionNext Question
Does Index Slows Down INSERT Statements?What Happens If You Add a New Index to Large Table?