SQL中Case When的用法


当前第2页 返回上一页

这里的两个CASE WHEN都相当于一个字段,不过值得一提的是,第二个CASE WHEN 的THEN值并不用写明是什么洲,它只是用于将记录进行分组,所以THEN后面的值只有能区分这三种记录就行,GROUP BY也可以写成:

1

2

3

4

5

6

7

8

GROUP BY CASE country

WHEN '中国'     THEN 0

WHEN '印度'     THEN 0

WHEN '日本'     THEN 0

WHEN '美国'     THEN 1

WHEN '加拿大'  THEN 1

WHEN '墨西哥'  THEN 1

ELSE 2 END;

2、用一个SQL语句完成不同条件的分组。

有如下数据:

3.png

用Case函数来完成按照国家和性别进行分组。使用如下SQL:

1

2

3

4

5

SELECT country,

SUM( CASE WHEN sex = '1' THEN population ELSE 0 END  ),  --男性人口

SUM( CASE WHEN sex = '2' THEN population ELSE 0 END )   --女性人口

FROM  Table_A

GROUP BY country;

得到如下结果:

4.png

就第一个CASE WHEN讲解:

1

2

CASE WHEN sex = '1' THEN

population ELSE 0 END

当记录的sex为1时,这个字段的值为记录的population值,否则为0,因此能计算出一个国家的男性人口。

更多SQL等编程入门教程,请持续关注PHP中文网!!

以上就是SQL中Case When的用法的详细内容,更多请关注木庄网络博客其它文章!

返回前面的内容

相关阅读 >>

sqlserver查询所有数据库名,表名,和字段名的语句

批量执行sql语句的方法

sql怎么学

[图文]三分钟学会sql server的复制功能

mysql 4种导入数据的方法

sql的常用数据类型列表详解

如何得到数据库中所有表名 表字段及字段中文描述

sql语句中修改表结构的命令是什么?

sql修改语句怎么写呢

hql查询语言的使用介绍

更多相关阅读请进入《sql》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...