SQLServer2008 关于CASE WHEN
来源:互联网 发布:软件导刊教育技术 编辑:程序博客网 时间:2024/06/16 13:03
CASE WHEN的两种格式
1.简单Case函数
CASE sex
WHEN '1' THEN '男'
WHEN '2' THEN '女'
ELSE '其他' END
2.Case搜索函数
CASE WHEN sex = '1' THEN '男'
WHEN sex = '2' THEN '女'
ELSE '其他' END
1).两者相比,Case搜索函数功能更强。
2).Case函数类似于if……else if 语句,只返回第一个符合条件的值,之后的部分会被忽略
例子:(按照指定规则分组,并计算每组人数)
create table #temp
(
country varchar(100),
people int
)
insert into #temp
select 'A',400 union all
select 'B',2890 union all
select 'C',3490 union all
select 'D',5678 union all
select 'E',457 union all
select 'F',2345
select
CASE WHEN country='A' or country='B' THEN '1组'
WHEN country='C' or country='D' THEN '2组'
WHEN country='E' or country='F' THEN '3组'
END 组别,SUM(people) 人数合计
from #temp
group by
CASE WHEN country='A' or country='B' THEN '1组'
WHEN country='C' or country='D' THEN '2组'
WHEN country='E' or country='F' THEN '3组'
END
ps.
Order by 后也可使用Case when 用于筛选需要的排序数据
Example:
order by case when ISNULL(A.ReqDate,'')!='' then A.ReqDate else A.PlanReqDate end desc
- SQLServer2008 关于CASE WHEN
- SQLServer2008 关于CASE WHEN
- SQLServer2008 关于CASE WHEN
- SQLServer2008 在where条件中使用CASE WHEN
- 关于CASE WHEN的 使用方法
- 关于case when then 的浅析
- 关于SQL的case when魅力
- 关于sqlserver中 case when的用法
- 关于ORACLE的case when 嵌套语句
- CASE WHEN
- Case when
- CASE WHEN
- CASE WHEN
- case when
- case when
- CASE WHEN
- case when
- Case when
- SQLServer2008 有用的“其他函数”
- 千寻阿萨(qianxun.asia)类百度搜索引擎
- 去除打开gvim时的警告
- SQLServer2008 关于数值字段列的累计
- MD5算法原理
- SQLServer2008 关于CASE WHEN
- Bitmap与Cache及Fresco android图片加载库
- SQLServer2008 关于Group by
- openssl-1.0.1s - libssl 移植到ARM Linux 板子是2416
- SQLServer2008 关于Having
- Eclipse设置:背景与字体大小和xml文件中字体大小调整
- Runtime类的应用
- SQLServer2008 在where条件中使用CASE WHEN
- 【高德地图SDK】如何实现轨迹平滑移动?