0

case ステートメント内に一時テーブルを作成できますか?

はいの場合は、例を挙げて説明してください。

実際に私はこのようなことをしたい..

declare @a int = 1

select case when @a = 1 then
'yes'
else
'no'
end

最初のケースが実行された場合、ビジネスデータを操作するために必要な条件で一時テーブルを作成したいと思います。

それ以外の場合は、他の条件で別のテーブルを作成して、ビジネス データを操作したいと考えています。

4

2 に答える 2

1

IF代わりに使用する必要があるようですCASE

declare @a int = 1

IF @a = 1
BEGIN
    'yes'
END
ELSE
BEGIN
    'no'
END
于 2013-03-02T13:06:01.397 に答える
1

あなたが言いたいことの2つの解釈:

異なるデータを持つ列を持つ:

SELECT CASE WHEN @a = 1 THEN
         'yes'
       ELSE
         'no'
       END AS answer
INTO tempTable

さまざまなクエリでテーブルを作成します。

IF @a = 1
  SELECT 'yes' AS answer
  INTO tempTable2
ELSE
  SELECT 'no' AS answer, 'other field' as other
  INTO tempTable2

SQLフィドル

于 2013-03-02T13:07:10.100 に答える