sql server case when
case具有两种格式:简单Case函数和Case搜索函数
简单case函数
实例:CASE sex
when '1' then '男'
when '2' then'女'
else '其他' end
Case搜索函数
实例: CASE
WHEN sex = '1' THEN '男'
WHEN sex = '2' THEN '女'
ELSE '其他' END
--还有一个需要注意的问题,Case函数只返回第一个符合条件的值,剩下的Case部分将会被自动忽略
case when提高
结合实例理解:
(一)

要求:依据表格求每个大洲的人口总和?
SELECT SUM(population) as popul,
CASE country
WHEN '中国' THEN '亚洲'
WHEN '印度' THEN '亚洲'
WHEN '日本' THEN '亚洲'
WHEN '美国' THEN '北美洲'
WHEN '加拿大' THEN '北美洲'
WHEN '墨西哥' THEN '北美洲'
ELSE '其他' END as area
FROM Cp
GROUP BY area ----------执行报错:列名'area'无效。area是即将生成的结果集中的列名,结果集生成之前无效
(二)

要求:按照国家和性别分组?
select country,sum(case when sex='1' then population else end),
sum (case when sex='2' then population else end)
from csp
group by country;
结果如下:
(三)select case when 用法
结果1:
结果2:
实例1
SELECT
COUNT (CASE WHEN sex = THEN 1
ELSE NULL
END) 男生数,
COUNT (CASE WHEN sex = THEN
ELSE NULL
END) 女生数
FROM students GROUP BY grade;
实例2
SELECT
COUNT (CASE WHEN sex = 1 THEN 1
ELSE NULL
END) 男生数,
COUNT (CASE WHEN sex = 2 THEN 1
ELSE NULL
END) 女生数
FROM students
(四)where case when用法
结果1
结果2
实例1
SELECT *
FROM students a
WHERE (CASE
WHEN a.sex= 1 THEN 1
ELSE 0
END) =1 | 0
(五) group by case when用法
结果
SELECT
CASE
WHEN sex = THEN '1'
ELSE NULL
END sex,
count(*)num
FROM students
GROUP BY
CASE
WHEN sex = THEN '1'
ELSE NULL
END
sql server case when的更多相关文章
- sql server Case when 的用法
sql Case 仅仅返回第一个符合条件的值,剩下的Case部分将会被自动忽略. Case 的使用有两种格式:简单Case函数和Case搜索函数. 简单Case 函数: Case sex when ' ...
- SQL Server - case when...then...else...end
Case具有两种格式.简单Case函数和Case搜索函数. --简单Case函数 CASE sex ' THEN '男' ' THEN '女' ELSE '其他' END --Case搜索函数 ' T ...
- SQL Server case表达式的用法
★CASE表达式是一个标量表达式,它基于条件逻辑来返回一个值.因为CASE是一个标量表达式,所以它可以应用在SELECT.WHERE.HAVING以及ORDER BY子句中. CASE表达式有两种格式 ...
- SQL Server case when 日期字符串转换 多表查询 嵌套子查询
select distinct stu.*, dbo.GetClassNameByStudentCode(stu.Code) as ClassName, dbo.GetCourseNameByStud ...
- sql server case when 判断为空
代码如下 select distinct G.* ,(select BUSINESS_NAME from BusinessInfo where BusinessInfo.BUSINESS_BID=G. ...
- SQL SERVER:CASE判断空,错误一例
-----错误判断------------------------------------------------------------------------------------ SELEC ...
- sql server case
use mytest go exec p_city 2,4 exec p_city_cnt 2,3 select stuff((select ',' + city_id from cities for ...
- SQL Server CASE语句中关于Null的处理
问: 从数据表中选择一个字段“field”,如果“field”值是1或NULL就赋值为1,其它情况为0,该怎么写啊?这样写对不对啊?(CASE fieldWHEN '1' THEN '1'WHEN N ...
- SQL Server case when 实现分类汇总
case when 实现分类汇总
随机推荐
- JVM 监控工具——jstack
[参考文章]:jstack 命令使用经验总结 1. 简介 jstack主要用于生成java虚拟机当前时刻的线程快照. 线程快照是当前java虚拟机内每一条线程正在执行的方法堆栈的集合, 主要目的是定位 ...
- 一本学习HTTP很好的书《图解HTTP》
网上电子版的一堆(*^__^*) 嘻嘻……
- 新版uni-app 在微信小工具调试遇到报错解决方案
问题描述:我在运行到微信小程序是运行报错打不开微信小程序报错如下图 结局方案:将微信小程序安全设置开启如下图
- LC 672. Bulb Switcher II
There is a room with n lights which are turned on initially and 4 buttons on the wall. After perform ...
- 浏览器端-W3School-HTML:HTML DOM rows 集合
ylbtech-浏览器端-W3School-HTML:HTML DOM rows 集合 1.返回顶部 1. HTML DOM rows 集合 HTML DOM Table 对象 定义和用法 rows ...
- win7系统下flutter环境搭建+AndroidStudio编译插件
flutter学习网址:https://flutter-io.cn/ ----------------------------------------------------------------- ...
- HTML头信息标签和标题标签
<html> <!-- 头信息的作用 1. 可以设置网页的标题. 2. 可以通知浏览使用指定的码表解释html页面. --> <head> <meta htt ...
- U盘文档自动备份
检测到插入U盘即复制其中doc.ppt文件到指定目录 (ucopy.bat): @echo off :again del /Q /f "%temp%\copy.tmp" >n ...
- CL_GUI_FRONTEND_SERVICES 使用问题
CL_GUI_FRONTEND_SERVICES(SAP操作Windows文件) 这个类下面的方法均为静态方法,引用的时候以=>来引用方法 注意:在执行CL_GUI_FRONTEND_SERVI ...
- JavaScript高程第三版笔记(1-5章)
第2章:在html中使用javascript ①script标签的defer属性 <script type="text/javascript" defer="def ...

结果1:
结果2: