生活随笔
收集整理的這篇文章主要介紹了
T-SQL:流程控制 4,Case 语句
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
| ylbtech-SQL Server:SQL Server-流程控制 4,Case 語句 |
?SQL Server 流程控制中的 Case 語句。
1 --=============================================================
2 -- 1, Case語句
3 -- Desc:Case語句也是條件判斷的一種,可以完成比If語句更強(qiáng)的判斷。在If語句中,如果需要判斷很多的條件話
4 -- ,將會(huì)用到大量的If嵌套。
5 -- 判斷條件越多時(shí),用If語句的嵌套就會(huì)越多,代碼看起來就越亂越復(fù)雜,可讀性就越差。使用Case語句可以輕松
6 -- 解決該問題。Case語句的語法代碼有兩種格式:一種是簡單的Case代碼,用于將某個(gè)表達(dá)式與一組簡單的表達(dá)式
7 -- 進(jìn)行比較以確定結(jié)果;一種是搜索的Case代碼,用于計(jì)算一組布爾表達(dá)式以確定結(jié)果。
8 -- author:ylbtech
9 -- pubdate:10:39 2012/12/15
10 --=============================================================
11 go
12
13 go
14 --=============================================================
15 -- 2,Syntax
16 -- Desc:簡單的Case語法代碼:
17 --=============================================================
18 Case input_expression
19 When when_expression
Then result_expression
20 [...n]
21 [Else else_result_expression]
22 End
23
24 --Remark:
25
26 go
27 --=============================================================
28 -- 3,Example
29 -- Desc:查看類別ID為2的類別名稱。
30 --=============================================================
31 use Northwind
32 go
33 Declare @categoryName varchar(
15)
34 Declare @outStr varchar(
100)
35
36 select @categoryName=CategoryName
from Categories
37 where CategoryID
=2
38
39 Set @outStr=Case @categoryName
40 When 'Confections' Then 'Category:Confections'
41 When 'Dairy Products' Then 'Category:Dairt Products'
42 When 'Saefood' Then 'Category:Seafood'
43 Else 'Other'
44 End
45
46 Print @outStr
47
48 go
49 --=============================================================
50 -- 4,Operation result
51 --=============================================================
52 --Other
53
54 go
55 --=============================================================
56 -- B2,Syntax
57 -- Desc:搜索的Case語法代碼:
58 --=============================================================
59 Case
60 When when_expression
Then result_expression
61 [...n]
62 [Else else_result_expression]
63 End
64
65 --Remark:
66
67 go
68 --=============================================================
69 -- B3,Example
70 -- Desc:查看類別ID為2的類別名稱。
71 --=============================================================
72 use Northwind
73 go
74
75 select ProductName,
Case CategoryId
76 When 1 Then 'Beverages'
77 When 2 Then 'Condiments'
78 When 3 Then 'Confections'
79 When 4 Then 'Dairy Products'
80 When 5 Then 'Grains/Cereals'
81 When 6 Then 'Meat/Poulry'
82 When 7 Then 'Produce'
83 When 8 Then 'Seafood'
84 Else 'Other'
85 End As Category
86 from Products
87
88 go
89 --=============================================================
90 -- B4,Operation result
91 --=============================================================
92 --Chai Beverages
93 --Chang Beverages
94 --Aniseed Syrup Condiments
95 --Chef Anton's Cajun Seasoning Condiments
96 --Chef Anton's Gumbo Mix Condiments 1.2, case when clumnName is null then
select case when sjfkje
is null then pzje
else sjfkje
end as fkje
from T_XMZX
1.3,
select LEN(oldbm),
case LEN(oldbm)
when 7 then '0'+oldbm
else oldbm
end as 'oldbm' from temp_yb_dw_0711b
1.4,
| 作者:ylbtech 出處:http://ylbtech.cnblogs.com/ 本文版權(quán)歸作者和博客園共有,歡迎轉(zhuǎn)載,但未經(jīng)作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責(zé)任的權(quán)利。 |
總結(jié)
以上是生活随笔為你收集整理的T-SQL:流程控制 4,Case 语句的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。