question

pvsrinivasrao avatar image
pvsrinivasrao asked

Is there any tool to explain how a query executes in SQL Server

Hi Is there any tool which explains how a query executes in SQL Server. For example, SELECT NAME, (SELECT [DESC] FROM PRODUCT LEFT OUTER JOIN PRODUCTDESC ON PRODUCT.PDID = PRODUCTDESC.PDID) FROM PRODUCT `enter code here` in the above query, how data is fetched, how data is filtered, when join is executed such kind of things can any tool explain? i heard about query analyzer but its complex is there any simple tool :)
sql-server-2008sqlquery-analyzer
1 comment
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

mikelanders avatar image mikelanders commented ·
Pick up any tsql book or read any number of thousands of blogs about tuning sql.
0 Likes 0 ·
Håkan Winther avatar image
Håkan Winther answered
Display actual execution plan in the toolbar is a good start (or use: SET STATISTICS XML ON ) I also use Set statistics io on; Set statistics time on; You can also get the execution plans from the cache by the DMV: SELECT * FROM sys.[dm_exec_query_stats] AS DEQS CROSS APPLY sys.[dm_exec_query_plan]([DEQS].[plan_handle]) AS DEQP ORDER BY [DEQS].[last_execution_time] This will give you a lot of information about the queries executed. You can sort and find slow or resource intense queries by this query. When you find the "worst" queries you can have a look at the execution plan to see whats wrong with it, and whats wrong always depends, but you can start to look for SCANS or KEY lookups, estimated cost, and the size of the arrows (the wider, the more data from each step). But to fully understand you should read the books from @grant fritchey.
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Magnus Ahlkvist avatar image
Magnus Ahlkvist answered
In sql server management studio, instead of executing the query; hit Ctrl+L and you'll ser the estimated query plan.
2 comments
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Håkan Winther avatar image Håkan Winther commented ·
+1 actual and estimated may differ, but you should always show estimated before you execute anything to see if you will get any result within a couple of seconds and not a couple of hours
0 Likes 0 ·
pvsrinivasrao avatar image pvsrinivasrao commented ·
any guide to understand the ouput of query analyzer :)
0 Likes 0 ·
Pavel Pawlowski avatar image
Pavel Pawlowski answered
To start understand the query plans, you can read article [Understanding More Complex Query Plans][1] by @Grant Fritchey and even There are also links to his excelent book **Dissecting SQL Server Execution Plans**. [1]: http://www.simple-talk.com/sql/performance/understanding-more-complex-query-plans/
1 comment
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Pavel Pawlowski avatar image Pavel Pawlowski commented ·
Of course you can also refer the MSDN: [Logical and Physical Operators Reference][1] [1]: http://msdn.microsoft.com/en-us/library/ms191158(v=SQL.105).aspx
0 Likes 0 ·
Fatherjack avatar image
Fatherjack answered
In addition to the other answers, if you want a detailed explanation of each of the showplan operators then the series of article that Simple Talk has here http://www.simple-talk.com/search/default.aspx?search=showplan+operator+of+the+week is a great reference
1 comment
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

TimothyAWiseman avatar image TimothyAWiseman commented ·
That series takes a lot of time to get through, but it is well worth reading if you are trying to understand what the plan means.
0 Likes 0 ·

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.