前:轉自[https://blog.csdn.net/weixin_43488965/article/details/89922467]
寫的很好,轉過來收藏
SQL Server判斷語句(IF ELSE/CASE WHEN )
執行順序是 – 從上至下 – 從左至右 --,所當上一個條件滿足時(無論下面條件是否滿足),執行上個條件,當第一個條件不滿足,第二個條件滿足時,執行第個二條件
- IF ELSE
不能用在SELECT中,只能是塊,比如:
IF …
BEGIN
…(代碼塊)
END
ELSE (注意這里沒有ELSE IF,要實現只能在下面的塊中用IF判斷)
BEGIN
…(代碼塊)
END
列:
declare @num int --定義變量
set @num=1 --賦值變量
if(@num>10)
begin
select * from 表1
end
else
begin
if(@num<0)
select Top(20) * from 表2
else
print @num
end
- CASE WHEN THEN ELSE END
可以在SELECT中使用,但是要包括END結尾
CASE …
WHEN … (條件/代碼塊) THEN …(返回值/case when then else end)
ELSE …(可省略)
END
列:
declare @num int --定義變量
set @num=111 --賦值變量
select @num,
case
when @num<=100 then case
when @num>=80 then ‘A’
when @num>=60 then ‘B’
else ‘C’ end
when @num>=200 then ‘優秀’
else ‘haha’
end
————————————————
版權聲明:本文為CSDN博主「我家喵叫長生」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:[https://blog.csdn.net/weixin_43488965/java/article/details/89922467]