您希望您的CASE
声明是这样的:
DECLARE @rowcount int
SELECT @rowcount = -1;
SELECT CASE @rowcount
WHEN -1 THEN 'I WON THE RACE'
WHEN 2 THEN 'I did not win'
END AS columnName
的CASE
进了SELECT
声明内。然后你只要看看你的价值@rowCount
,并采取适当的行动。您可能需要阅读更多有关CASE声明
一个CASE
语句的第二种形式是这样的:
SELECT CASE
WHEN @rowcount IS NULL THEN 'Null case here'
WHEN @rowcount = -1 THEN 'I WON THE RACE'
WHEN @rowcount = 2 THEN 'I did not win'
END AS columnName
如果你想使用一个CASE与INSERT:
DECLARE @rowcount int
SELECT @rowcount = -1;
INSERT INTO myTable(column1, column2, column3)
SELECT CASE @rowcount
WHEN -1 THEN 'I WON THE RACE'
WHEN 2 THEN 'I did not win'
END AS column1
, t.column2
, CASE
WHEN t.someColumn < someValue THEN 'thirdColumnValue'
ELSE 'someColumn is greater than specified value'
END AS column3
FROM secondTable AS t
如果不够清楚,我很抱歉。这仅仅是一个例子,**我得到插入语句代替那些选择**它没有区别吗? – Deeptechtons
@Deeptechtons我已经更新了我的答案,以包含使用'CASE'语句的'INSERT'的示例。 –