In many large web applications writing queries in your DBAL/whatever without being able to dive into the underlying query and understand what's going on, I'd say it's pretty crucial. For anything small (complexity or expected traffic) you can probably get by without?