基本的にSQLが余り得意ではないので、20行を超えるSQLとか読んだ日には、
解析だけで1時間以上かかる私ですが。

SQLで何とかして情報を取得しようとする人って、異常に難しい正規表現を書く人と同じ気がします。
なので私はメモリを食いつぶさない程度にSQLでデータを纏め、残りはプログラムで集約させるのが好き。
余りにも長いSQLだと、webですから修正も多いと思います。
そういう時に完全組直しが非常に厄介。

もちろんロジック部分はオブジェクトにしておいて改修しやすいのがベスト。
たまにべた書きしちゃいますけど。。。