ylbtech-SQL Server:SQL Server-流程控制 4,Case 语句

SQL Server 流程控制中的 Case 语句。

1,Case 语句
 1 --=============================================================
 2 -- 1, Case语句
 3 -- Desc:Case语句也是条件判断的一种,可以完成比If语句更强的判断。在If语句中,如果需要判断很多的条件话
 4 -- ,将会用到大量的If嵌套。
 5 -- 判断条件越多时,用If语句的嵌套就会越多,代码看起来就越乱越复杂,可读性就越差。使用Case语句可以轻松
 6 -- 解决该问题。Case语句的语法代码有两种格式:一种是简单的Case代码,用于将某个表达式与一组简单的表达式
 7 -- 进行比较以确定结果;一种是搜索的Case代码,用于计算一组布尔表达式以确定结果。
 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/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

T-SQL:流程控制 4,Case 语句相关推荐

  1. 十三、流程控制之if语句

    using System; using System.Collections.Generic; using System.Linq; using System.Text;namespace _13.流 ...

  2. 100内奇数之和流程图_JavaScript基础教程(六)流程控制之循环语句

    JavaScript入门教程之循环语句 循环语句从字面意思理解就是重复执行,能够让计算机按照程序员要求重复执行某种操作的能力是所有程序设计语言所必须具备的基本能力.在JavaScript程序设计语言中 ...

  3. sql高级语法之case语句

    sql高级语法之case语句 1.创建数据库 2.创建表 3.CASE语句 语法格式1 示例 语法格式2 示例 1.创建数据库 create DATABASE advanced_prac; use a ...

  4. SQL 流程控制语句 之五 RETURN语句介绍

    SQL 流程控制语句 之五 RETURN语句介绍 一.RETURN语句例子: WAITFOR delay '00:00:01' Select * from titles return select * ...

  5. mysql 普通sql流程控制,【mysql的编程专题①】流程控制与其他语法

    流程控制与内置函数,一般用在select的field字段上,或者用在函数,存储过程,触发器中; 如果用在select上就会随着query出来的row来隐式迭代; 注释与语句结束符 语句结束符 默认有两 ...

  6. pl/sql:oracle13(跟着宝哥学java:oracle系列:全网最全):pl/sql语法、pl/sql流程控制

    /* PL/SQL过程语言(Procedural Language)与结构化查询语言(SQL)结合而成的数据库编程语言PL提供流程控制的语句SQL提供访问数据库的语句PL/SQL是对sql的扩展 使其 ...

  7. oracle中sql语句排序,Oracle SQL排序方式与case语句

    我在理解带有case语句的oracle(12c)sql order by子句时遇到困难.我有一张包含以下数据的表格, SELECT DEPT_NO, DEPT_NAME FROM SORTNG_LOG ...

  8. Python基础——流程控制之循环语句

    文章目录 一. 循环简介 1.1 循环的作用 1.2 循环的分类 二. while的语法 2.1 快速体验 三. while的应用 3.1 应用一:计算1-100累加和 3.2 应用二:计算1-100 ...

  9. Python接口自动化测试框架(基础篇)-- 流程控制之循环语句forwhile

    前言 很开心,python学到循环语句了,也越来越好玩了,学到这儿,基本上也能处理一些流水线的工作了,只是稍欠装饰显得不那么灵活.复用性不高. 循环语句 python中循环语句有for和while:如 ...

最新文章

  1. LeetCode(1.俩数之和)JAVA
  2. jquery通过ajax提交form
  3. 当年我是如何死磕 MySQL 数据库的
  4. 第2章 Python 数字图像处理(DIP) --数字图像基础3 - 图像内插 - 最近邻内插 - 双线性插值 - 双三次内插 - 图像放大
  5. 判断sem信号量为零_将信号量递减为零的进程崩溃时,如何恢复信号量?
  6. linux使用设备文件的目录,Linux系统下的/dev目录
  7. ASP.NET组件设计Step by Step(8)
  8. 初始ES6-Webpack
  9. Python:assert基本用法
  10. tensorflow 基础: static shape VS Dynamic shape, get_shape VS tf.shape() , reshape VS set_shape
  11. 利用机器学习实现微信小程序-加减大师自动答题
  12. Fudan-NLP-Beginner:自然语言处理入门练习
  13. 【100个 Unity小知识点】☀️ | Unity中显示运行时游戏帧率的方法
  14. 鸟哥的linux网络基础,鸟哥的 Linux 私房菜 -- 基础网络概念.pdf
  15. 微信公众号里面服务器配置关闭,微信公众号服务器配置无法修改
  16. Centos下安装桌面环境和Flash插件
  17. 百度地图如何去除 百度地图的logo
  18. lightroom 闪退_【HTTP网球iOS】Lightroom解锁
  19. 湖南科技大学计算机领导参观老年日间中心,湖南科技大学新闻网
  20. 工业制造中PHM的云架构

热门文章

  1. IntelliJ IDEA 问题总结之一 —— jar包、assets、maven、git
  2. 如何修改Linux命令提示符
  3. 64位win10+cuda8.0+vs2013+cuDNN V5下Caffe的编译安装教程并配置matlab2014a 接口
  4. python基础:zip和dict详解
  5. 不再以讹传讹,GET和POST的真正区别
  6. 解决 FTPClient 出现的553错误
  7. 努力将SQL Server像玩游戏一样熟练
  8. C++线程同步之事件(生产者与消费者问题)
  9. 第3章 Python的数据结构、函数和文件
  10. Redis学习-sorted set数据类型