トラックバックURL: | http://jemi.s5.xrea.com/mt/mt-tb.cgi/451 |
なぜにUNIONやらEXCEPTやらMINUSを使わないんだ? というとですね。
このテクニックに気付いた頃のMySQL(バージョン3系)にはまだ、
UNIONが無かったからなんですねえw
今回の仕事で使っているSQLServerもUNION(和集合)しかなく、
EXCEPTやMINUSなどの差集合が無いから、同様に
一時テーブルを使ったと言うわけです。
一時テーブルを使った集計のいいところは、
独立したクエリの答えを表示できるところにもある。
っていう言い訳でした(汗
しかも、MySQLには副問い合わせ(サブクエリー)がないから(当時)、
どーにかして、それを解決しなければならんかったのでした。
MySQLに漬かった期間が長かったおかげで、
今はMySQLを基準にSQLを構成する頭になっております。
そろそろ、サブクエリーも積極的に使っていかなくては。
でも、一時テーブルで、結果をストアするほうが、イメージしやすいんだよね、圧倒的に。
サブクエリーの結果セットだって、恐らくは内部で一時テーブル使ってるんでしょ?
よくしらねーけどw
そんなわけで、SQLServerでカーソルの使い方を少し学んだ。
今後の仕事に役立てなければ。こいつの使い方をもっとマスターすれば、
少ないメモリで大量のデータをストレスなく、クライアントで表示できるはずなのだ。