My advice to folks out there is that when you work with black boxes (databases, indexing, modules, perl functions etc) do a bit of homework. Find out how they are implemented in at least abstract high level terms.
Absolutely. In my case this has meant understanding how the query optimizer works in Sybase - because although it will usually do a good job, sometimes (as with the quicksort issue shown here) you can get pathological queries that you think should work just fine, but that due to some optimizer decision actually go off the deep end... If you understand how the optimizer works it is then much easier to re-write the query to be more efficient.
Michael