SQLServerのストアドプロシージャでのIFの書き方です。
IF文の書き方
例)IFのみの場合
1 2 3 4 |
IF @VAL = '1' BEGIN SELECT '@VALの値は1です。' END |
例)IF~ELSE IFの場合
1 2 3 4 5 6 7 8 |
IF @VAL = '1' BEGIN SELECT '@VALの値は1です。' END ELSE IF @VAL = '2' BEGIN SELECT '@VALの値は2です。' END |
例)IF~ELSE IF~ELSEの場合
1 2 3 4 5 6 7 8 9 10 11 12 |
IF @VAL = '1' BEGIN SELECT '@VALの値は1です。' END ELSE IF @VAL = '2' BEGIN SELECT '@VALの値は2です。' END ELSE BEGIN SELECT '@VALの値は1または2以外です。' END |
備考
- SQLServerのIF文は、他の言語にはよくある「END IF」に相当するものが無いのが特徴です。
- なので、分岐した処理の箇所毎に「BEGIN~END」で囲う必要があります。