收藏298
分享
阅读2628
更新时间2025-08-20
CASE 语句遍历条件并在满足第一个条件时返回一个值(如 if-then-else 语句)。 因此,一旦条件为真,它将停止读取并返回结果。 如果没有条件为真,则返回 ELSE 子句中的值。
如果没有ELSE部分且没有条件为真,则返回NULL。
CASE WHEN condition1 THEN result1
WHEN condition2 THEN result2 WHEN
conditionN THEN resultN ELSE resultEND;以下是 Northwind 示例数据库中"OrderDetails"表的选择:
| OrderDetailID | OrderID | ProductID | Quantity |
|---|---|---|---|
| 1 | 10248 | 11 | 12 |
| 2 | 10248 | 42 | 10 |
| 3 | 10248 | 72 | 5 |
| 4 | 10249 | 14 | 9 |
| 5 | 10249 | 51 | 40 |
以下 SQL 遍历条件并在满足第一个条件时返回一个值:
SELECT OrderID, Quantity,CASE WHEN Quantity > 30
THEN 'The quantity is greater than 30' WHEN Quantity = 30 THEN 'The
quantity is 30' ELSE 'The quantity is under 30'END AS QuantityTextFROM OrderDetails;
»
以下 SQL 将按城市对客户进行排序。 但是,如果 City 为 NULL,则按 Country 排序:
SELECT CustomerName, City, CountryFROM CustomersORDER BY(CASE
WHEN City IS NULL THEN Country ELSE CityEND);
»
相关
视频
RELATED VIDEOS
科技资讯
1
2
3
4
5
6
7
8
9
精选课程
共5课时
17.2万人学习
共49课时
77.2万人学习
共29课时
61.9万人学习
共25课时
39.4万人学习
共43课时
71.1万人学习
共25课时
61.8万人学习
共22课时
23万人学习
共28课时
34万人学习
共89课时
125.5万人学习