2013-03-02 78 views
0

我可以在case語句中創建臨時表嗎?臨時表

如果是的話請用例子說明我。

其實我想要做這樣的事情..

declare @a int = 1 

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

如果第一種情況下執行的話,我想創建臨時表與該條件是需要操縱一些業務數據。

在其他情況下,我想創建另一個表與其他條件來操縱業務數據。

+1

哪個SQL引擎? – 2013-03-02 12:50:30

回答

1

兩種不同的解釋,你可以說的是:

有不同的數據列:

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 

SQLFiddle

1

這聽起來像你應該使用IF代替CASE:什麼,我相信

declare @a int = 1 

IF @a = 1 
BEGIN 
    'yes' 
END 
ELSE 
BEGIN 
    'no' 
END