SQL Server判斷語句(IF ELSE/CASE WHEN )


執行順序是 – 從上至下 – 從左至右 --,所當上一個條件滿足時(無論下面條件是否滿足),執行上個條件,當第一個條件不滿足,第二個條件滿足時,執行第個二條件


1、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

2、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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM