首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

T-SQL 進階:CASE 運算式兩大形式(簡單/搜尋)與 ORDER BY 應用

     編輯:關於SqlServer

CASE 運算式本質

基於欄位的邏輯判斷,可用於 `SELECT`、`UPDATE`、`DELETE`、`SET`、`IN`、`WHERE`、`ORDER BY`、`HAVING`。不控制程式流程,僅作為欄位值轉換。

簡單 CASE 運算式

比較單一運算式與一組值:

SELECT TOP 4 
    CASE EmployeeID 
        WHEN 1 THEN 'CareySon' 
        WHEN 2 THEN 'Jack' 
        WHEN 3 THEN 'Tom' 
        ELSE 'UNKNOW' 
    END AS NameList,
    EmployeeID
FROM HumanResources.Employee
ORDER BY EmployeeID;

結果圖示(圖 1)。

CASE 結果

別名寫法:`NameList = CASE ... END` 等效。`THEN` 後資料型別必須相容。建議保留 `ELSE`,否則不匹配回傳 `NULL`。

搜尋 CASE 運算式

評估一組布林運算式:

CASE 
    WHEN 條件1 THEN 結果1 
    WHEN 條件2 THEN 結果2 
    ELSE 結果N 
END

適用複雜條件判斷(如薪資區間分級)。

ORDER BY 應用

ORDER BY 
    CASE WHEN Status = 'Urgent' THEN 1 
         WHEN Status = 'Normal' THEN 2 
         ELSE 3 END;

實現自訂排序邏輯。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved