Case语句是条件判断语句的一种,可以完成比if语句更强的判断,可以解决if语句中嵌套过多的问题。
case和c#或其他程序中的选择结构用法差不多,只是用的关键词不一样
语法:
case when 条件A Then 结果A When 条件B 结果B ........ else 结果N end
和Decode 不同的是,Decode 只能针对固定的值,而 Case 可以用不是固定值,需是一个条件
下面是应用中的实例:
- DECLARE @number // 判断需要的列名
- DECLARE @Result //输出的结果
- SELECT @number= 学号
- FROM 学生表 //从表中查询数据
- WHERE 学生姓名= 1
- SET @result = CASE @number //判断
- WHEN '1' THEN '张三' //条件1和输出
- WHEN '2' THEN '李四' //条件2和输出
- WHEN '3' THEN '王五' //条件3和输出
- ELSE '不存在'
- END
特别注意:都不满足条件,返回的是null
大概就是这个样子,当需要判断条件和输出结果多的话,建议使用