我正在尝试在 If 条件中使用"和",如下所示:
Begin
If condition1 and condition2
then begin result1
end else begin result2;
End;
end;
声明中有什么问题。有人可以帮忙吗?谢谢!
删除您的THEN
。例
DECLARE @variable INT = 0
DECLARE @variable2 INT = 10
IF @variable > 0 AND @variable2 > 0
BEGIN
SELECT 'Condition was met'
END
ELSE
BEGIN
SELECT 'Condition was not met'
END
如果要链接IFs
:
DECLARE @variable INT = 0
DECLARE @variable2 INT = 10
IF @variable > 0 AND @variable2 > 0
BEGIN
SELECT 'Condition 1 was met'
END
ELSE IF @variable = 0 AND @variable2 > 0
BEGIN
SELECT 'Condition 2 was met'
END
ELSE
BEGIN
SELECT 'No condition was met'
END
此外,您可以避免BEGIN
...END
,如果你只需要一个语句,但如果表达式很长,阅读起来可能会很棘手。
DECLARE @variable INT = 0
DECLARE @variable2 INT = 10
IF @variable > 0 AND @variable2 > 0
SELECT 'Condition was met'
ELSE
SELECT 'Condition was not met'
作为一个疯狂的猜测,失去"然后"(SFrejofsky的评论(,并失去第一个;这是在开始内。端块。
此外,如果块中只有可执行行,则开始。.不需要 end,因此您的代码应如下所示
If condition1 and condition2
result1
else
result2
Begin
If condition1 and condition2
result1
else
result2
END