This month’s T-SQL Tuesday is hosted by Jason Brimhall (b | t) and is about self reflection. This month we’re doing a little reflecting and writing about resolve, resolution, or resolute. I recently posted some goals I had for 2013 and this dovetails nicely with my reflection of last year and my resolve to keep moving forward and push myself in new ways. With that in mind, I have some brief thoughts about T-SQL skills resolution.
Resolution: Bringing it Into Focus
I am pretty much a self-taught T-SQL developer. I originally started back around SQL Server 2000 and, to be honest, really didn’t know what I was doing. Over many years I’ve been able to slowly work on my understanding of how databases work and now I program T-SQL almost every day. I like to think that my skills are good but last week I read Aaron Bertrand’s (b | t) great post about the performance of outer joins versus other options such as not exists and I have decided that I need to challenge myself to look for better ways to improve T-SQL performance.
My core SQL concepts are pretty solid but I’d like to increase my resolution on the “extras”. There are so many small things that can be done to increase query performance such as appropriate use of CTEs, using NOT EXISTS instead of LEFT OUTER JOIN, or better understanding what an execution plan means and how it can modified. It will take a lot of study, some experimentation, and a little bit of luck to get those extra bits of performance. Do you have a SQL performance tip?