C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

ツリー一括表示

WITHとIFの使い方 /夜叉姫 (20/11/11(Wed) 10:46) #96316
Re[1]: WITHとIFの使い方 /Hongliang (20/11/11(Wed) 12:07) #96320


親記事 / ▼[ 96320 ]
■96316 / 親階層)  WITHとIFの使い方
□投稿者/ 夜叉姫 (1回)-(2020/11/11(Wed) 10:46:01)

分類:[.NET 全般] 

SQLServer を使用しております。
以下のようにIF条件を使用したいのですがどうすればよいのでしょうか?

<<例文>>
WITH
INP AS (
SELECT *
FROM INP
WHERE CODE = 1
)

IF (
SELECT COUNT(*)
FROM INP
) <> 1
THROW 50000, 'エラー', 1
ELSE IF
BEGIN
INSERT INTO OPT
SELECT *
FROM INP
END
[ □ Tree ] 返信 編集キー/

▲[ 96316 ] / 返信無し
■96320 / 1階層)  Re[1]: WITHとIFの使い方
□投稿者/ Hongliang (1111回)-(2020/11/11(Wed) 12:07:08)
WITHではなく、SELECT INTOで一時テーブルを作ればよいのではないでしょうか。

SELECT *
INTO #INP -- #1つで名前が始まるのはローカル一時テーブル
FROM INP
WHERE CODE = 1;
IF (
  SELECT COUNT(*)
  FROM #INP
) <> 1
  THROW 50000, 'エラー', 1
ELSE
  BEGIN
  INSERT INTO OPT
  SELECT *
  FROM #INP
END

[ 親 96316 / □ Tree ] 返信 編集キー/


管理者用

- Child Tree -