CASE WHEN 函数
--Case函数:
--有两种格式:
-- 1.简单Case函数。
-- 2.Case搜索函数。
--1.简单Case函数:
-- CASE [COLUMN_NAME]
-- WHEN ['条件参数'] THEN ['COLUMN_NAME/显示内容']
-- WHEN ['条件参数'] THEN ['COLUMN_NAME/显示内容']
-- ......
-- ELSE ['COLUMN_NAME/显示内容']
-- END
--2.Case搜索函数:
-- CASE WHEN [COLUMN_NAME] = ['COLUMN_NAME/显示内容/表达式'] THEN [''COLUMN_NAME/显示内容'']
-- WHEN [COLUMN_NAME] = ['COLUMN_NAME/显示内容/表达式'] THEN [''COLUMN_NAME/显示内容'']
-- ......
-- ELSE ['COLUMN_NAME/显示内容']
-- END
--说明:两种方式可以实现相同的功能。简单CASE函数较CASE搜索函数语法简洁,但功能方面有所限制。
--比如说写判断式。同时还需要注意一点:CASE函数只返回第一个符合条件的值,剩下达到CASE部分将会被自动忽略。
--另外:使用CASE()函数一方面可以在查询时灵活的组织语法结构,另外一方面可以避免对同一张或多张表的多次访问。
--重点说明:ELSE可以没有。
--EG:
SELECT C.* ,
CASE WHEN C.T_NUMBER = '' THEN '男'
WHEN C.T_NUMBER = '' THEN '女'
ELSE '其他'
END AS '性别'
FROM DAY20190706 C; SELECT C.* ,
CASE WHEN C.T_NUMBER < '' THEN '男'
WHEN C.T_NUMBER > '' THEN '女'
ELSE '其他'
END AS '性别'
FROM DAY20190706 C; SELECT C.* ,
CASE WHEN C.T_NUMBER = '' OR C.T_NUMBER = '' THEN '男'
WHEN C.T_NUMBER = '' THEN '女'
ELSE '其他'
END AS '性别'
FROM DAY20190706 C; SELECT C.* ,
CASE WHEN C.T_NUMBER = '' AND C.T_NUMBER = '' THEN '男'
WHEN C.T_NUMBER = '' THEN '女'
ELSE '其他'
END AS '性别'
FROM DAY20190706 C;
CASE WHEN 函数的更多相关文章
- 数据库SQL中case when函数的用法
Case具有两种格式,简单Case函数和Case搜索函数.这两种方式,可以实现相同的功能.简单Case函数的写法相对比较简洁,但是和Case搜索函数相比,功能方面会有些限制,比如写判断式. 简单Cas ...
- oracle的decode、sign、nvl,case...then函数
ORACLE几种常用的方法 1.decode 常见的用法 : 格式:decode(condition,value1,result[, value2,result2], default_result) ...
- SQL Server高级内容之case语法函数
1.Case函数的用法 (1)使用类似:switch-case与if-else if. (2)语法: case [字段] when 表达式 then 显示数据 when 表达式 then 显示数据 ...
- SHELL编程之case与函数
一.case语句概述 使用case语句改写if多分支可以使脚本结构更加清晰.层次分明 针对变量不同取值,执行不同的命令序列 case语句结构如下: case 变量值 in 模式1) 命令序列1 ;; ...
- decode与case when 函数
百度百科: DECODE函数,是ORACLE公司的SQL软件ORACLE PL/SQL所提供的特有函数计算方式,以其简洁的运算方式,可控的数据模型和灵活的格式转换而闻名. DECODE 中的if-th ...
- SQL变量、Substring、charindex、case函数、去除重复
isnull(aa,0)删除表数据: truncate table aaa 添加字段: ALTER TABLE table1 ADD col1 varchar(200) DEFAULT '2008 ...
- Mysql-通过case..when实现oracle decode()函数进行多值多结果判断
oracle的decode函数使用:http://www.cnblogs.com/hwaggLee/p/5335967.html case ..when 函数使用:http://www.cnblogs ...
- ORACLE CASE函数 .
Case具有两种格式.简单Case函数和Case搜索函数. --简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END ...
- Case when 的用法,简单Case函数
Case when 的用法,简单Case函数 简单CASE表达式,使用表达式确定返回值. 语法: CASE search_expression WHEN expression1 THEN result ...
随机推荐
- cisco路由器telnet及设置用户名和密码的几种方式
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/sxajw/article/details ...
- LeetCode_461. Hamming Distance
461. Hamming Distance Easy The Hamming distance between two integers is the number of positions at w ...
- 使用mwget代替wget
wget相对于浏览器来说,速度会比较偏慢,特别是国外的网站. 刚好经常用的xftp无法正常使用了,于是开始折腾mwget 下面来看一下安装步骤: wget http://jaist.dl.source ...
- Java 文件完整性校验 MD5 sha1 sha256 sha224 sha384 sha512
由于项目中需要使用文件做备份,并且要提供备份文件的下载功能.备份文件体积较大,为确保下载后的文件与原文件一致,需要提供文件完整性校验. 网上有这么多此类文章,其中不少使用到了 org.apache.c ...
- 2017ACM/ICPC广西邀请赛 Color it
Color it Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 132768/132768 K (Java/Others)Tota ...
- Linux内核中的双向链表struct list_head
一.双向链表list_head Linux内核驱动开发会经常用到Linux内核中经典的双向链表list_head,以及它的拓展接口和宏定义:list_add.list_add_tail.list_de ...
- MYSQL:查询单表中不同邮箱最近一次发送状态
1.联系方式表-customer_contact: id email 1 123456@qq.com 2 987643@qq.com 3 hahaha@qq.com 2.发送邮件记录表-contact ...
- 前端与算法 leetcode 66. 加一
目录 # 前端与算法 leetcode 66. 加一 题目描述 概要 提示 解析 解法一 解法二 算法 # 前端与算法 leetcode 66. 加一 题目描述 给定一个由整数组成的非空数组所表示的非 ...
- elasticsearch 常见查询及聚合的JAVA API
ES 常见查询 (1)根据ID 进行单个查询 GetResponse response = client.prepareGet("accounts", "person&q ...
- strlen()与sizeof()
一.strlen() strlen()为计算字符串长度的函数,以‘\0’为字符串结束标志.注意:其传入参数必须是字符串指针(char*), 当传入的是数组名时,实际上数组退化成指针了. 二.sizeo ...