IF文の中で指定する条件式に対し、SELECT文の結果を利用できます。ストアドプロシージャを利用したプログラムを作成する場合、データベースの値を利用した条件分岐を行いたい場合が多々発生しますが、このような場合にうまく利用するとよいでしょう。
それではサンプルを見ながらその動作を確認しましょう。
CREATE PROCEDURE uspSamle4 |
このサンプルでは、IF構文を利用した2つ目の条件式としてSELECT文を指定しています。条件式に利用したSELECT文は、与えられたパラメータによってCOUNT関数を発行し、対象データ件数を調べています。条件式でSELECT文を利用する場合、このようなデータ比較を行うため、複数の列を返すSELECT文は利用できません。
今回は条件式によるストアドプロシージャの制御を取り上げました。ストアドプロシージャを利用することによって、さまざまな処理を行うことが実感できたのではないでしょうか。
次回はストアドプロシージャで重要な機能である「カーソル」を取り上げます。お楽しみに!(次回へ続く)
石橋潤一
株式会社システムインテグレータ勤務。Web+DBの業務アプリをメインに開発に携わる。@IT連載記事「SQL Server 2005を使いこなそう」「SQL Server 2005 CTPレビュー」執筆のほか、著書に『DBマガジン別冊 SQL Server 2005徹底活用ガイド』(翔泳社刊/共著)、『ASP.NET+SQL Server ゼロからはじめるWebアプリケーション』(ソフトバンクパブリッシング刊/共著)。
Copyright © ITmedia, Inc. All Rights Reserved.