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的用法的详细内容,更多请关注木庄网络博客其它文章!

返回前面的内容

相关阅读 >>

navicat怎么恢复sql server的数据库备份

使用sqlserver cte递归查询处理树、图和层次结构

mysql高级进阶sql语句总结大全

数据库性能优化之sql语句优化

sql server 2000向sql server 2008 r2推送数据图文教程

mysql中一条sql查询语句是如何执行的

浅谈三种数据库的sql注入

将access数据库中数据导入到sql server中的详细方法实例

一小时迅速入门mybatis之prepared statement与符号的使用

sql注入语句是什么

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


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

数据库系统概念 第6版

机械工业出版社

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



打赏

取消

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

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

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

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

评论

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