SQL Server 恐るべし

これまでローカルのACCESSで3分以上掛っていたクエリーが、SQL Serverに切り替えて1秒かからないで結果が表示でるようになり驚いています。

◆処理の概要
3万件ほどの「明細データ」をグルーピングして、3千件の「マスタデータ」と突き合わせて、「マスタデータ」に対応する「明細」が存在するか表示するような、よく有りそうなクエリーです。

◆高速化のポイント
サーバー自体の処理能力がパソコンに比べて高い

スカラ関数利用して、マスタデータに対して明細が存在するか関数で調べるようにします。SELECT文はマスタデータ件数分の約3千回発行されることになります。
これまで、「明細データ」をグルーピングしてからマッチングするイメージで、SELECT文はグルーピングとマッチングで2回発行することが多かったんですが、一見非効率と思える関数での処理の方が、結果が短時間で得られることがわかりました。
目から鱗!状態です。(あくまで表示用です。バッチでは効果はないと思います)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です