私の場合、SQLをゴリゴリ書きたくない場合は、Viewを作りますね。 で、コード側からは、直接Viewを開くだけ。 Open("View名") みたいな感じ。 少なくとも、これで、 「あれ、あのSQLどこだっけ?」 って、全コードgrepすることは無くなります。
蛇足ですが。 SQLゴリゴリ と View には明らかな違いが1つあります。 SQLゴリゴリは、まずSQLの構文解析から始まり、構文解析結果に基づいて、 Join処理やフィルタ処理が行われ、結果表が返されます。 しかし、ViewだとSQLの構文解析処理がすっ飛ばされます。 なぜなら、Viewを作るということは、データベース側から見ると、SQL文を 保存しているのではなく、構文解析結果を保存しているからです。 結果表が1〜数レコードにしかならないようなSQLを多数流すような場合、 構文解析処理の処理時間が馬鹿にできないので、明らかな性能差となって 現れます。
- Child Tree -