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 :)
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.