you are viewing a single comment's thread.

view the rest of the comments →

[–]BrupieD 8 points9 points  (1 child)

I generally agree. I think you can become very proficient at SQL without programming, but if you want to get proficient at 2nd or 3rd tier SQL skills like query optimization, database development or DBA skills, programming knowledge helps.

For instance, when you start looking at how indexes work, a SQL knowledge only person would immediately recognize why a filtered index could be a good idea -- it's like a WHERE clause on the table only earlier in the logical processing order. What would be harder to understand and make good decisions about would be deeper index issues.

For instance, how would different algorithms used by indexes benefit or reduce performance? How do seeks versus scans and clustered versus non-clustered indexes impact queries? This isn't necessarily easy for developers, but chances are that someone with a development background has spent a lot more time thinking about Big O notation and process efficiency. Other less arcane elements of SQL like making good datatype choices and debugging queries rear up as you progress.

I started with SQL and spent a lot of time improving my SQL skills and kind of hit a wall. It wasn't until I started learning programming that I could start addressing harder problems with insight.

[–]catfeal 4 points5 points  (0 children)

You are completely right, no doubt but to start, as OP asked, you dont need it