sql控制流if()、case when then
tb_user:
1、if (expr1,expr2,expr3) #如果expr1成立,则返回expr2,否则返回expr3
示例:
select name, if (sex=1,'男','女') sex from tb_user #如果sex是1,sex查询结果返回‘男’,否则返回‘女’
2、ifnull(expr1,expr2) #如果expr1不为null,则返回expr1,否则返回expr2
示例:
select name 姓名, ifnull(sex, '其他') sex from tb_user #如果sex是null,则返回‘其他;sex不是null,则正常返回
3、case column_name when expr1 then result1 else result2 end
#如果column_name是1,sex查询结果返回‘男’,否则返回‘女’
示例:
select name 名字, case sex when 1 then '男' else '女' end 性别 from tb_user
#如果sex是1,sex查询结果返回‘男’,否则返回‘女’
4、case column_name when expr1 then result1 when expr2 then result2 end
#如果column_name是expr1返回result1,如果column_name是expr2返回result2,when * then *可以写多个,end 表示结束
示例1:
select name 名字, case sex when 1 then '男' when 2 then '女' end 性别 from tb_user
#如果sex是1,sex查询结果返回‘男’;sex是2,sex查询结果返回‘女’
示例2(多条件):
select name 名字, case sex when 1 then '男' when 2 then '女' end 性别, case when age<=16 then '未成年' when age>16 and age<=30 then '青年' when age>30 and age<=50 then '壮年' else '老年' end 年龄 from tb_user
#年龄小于等于16显示为‘未成年’;年龄大于16且小于等于30显示为‘青年’;
#年龄大于30且小于等于50显示为‘壮年’;年龄大于50显示为‘老年’;
sql控制流if()、case when then的更多相关文章
- 你真的会玩SQL吗?Case也疯狂
你真的会玩SQL吗?系列目录 你真的会玩SQL吗?之逻辑查询处理阶段 你真的会玩SQL吗?和平大使 内连接.外连接 你真的会玩SQL吗?三范式.数据完整性 你真的会玩SQL吗?查询指定节点及其所有父节 ...
- sql中对于case when...then...else...end的写法和理解
查询配件主数据表(tbl_part_base_info)的所有数据和配件是否有物料(物料表(tbl_material)中有配件主数据表的part_no,就表示有物料,反之,则表示没有物料),用sql中 ...
- 转载:SQL中的case when then else end用法
SQL中的case when then else end用法 来源: http://www.cnblogs.com/prefect/p/5746624.html Case具有两种格式.简单Case函数 ...
- 走向面试之数据库基础:二、SQL进阶之case、子查询、分页、join与视图
一.CASE的两种用法 1.1 等值判断->相当于switch case (1)具体用法模板: CASE expression WHEN value1 THEN returnvalue1 WHE ...
- 如何用ORM支持SQL语句的CASE WHEN?
OQL如何支持CASE WHEN? 今天,一个朋友问我,OQL可否支持CASE WHEN语句?他给的示例SQL如下: then '启用' else '停用' from tb_User OQL是SOD框 ...
- 转-sql中的case when的用法
Case具有两种格式.简单Case函数和Case搜索函数. --简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END ...
- SQL中的CASE的用法
CASE在SQL语句中,很有点类似java等高级编程语言中的switch这样子的多分枝语句,但是有点不同的是,case后面接的是when,另外,when的后续分枝有点类似if后面接else.这个是我的 ...
- SQL中的CASE WHEN用法
其语法如下: 1)case vlaue when [compare-value]then reslut [when[compare-value]] then result ...] [else res ...
- SQL中的case when then else end用法
--简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END --Case搜索函数 CASE WHEN sex = '1' ...
随机推荐
- CentOS7安装CDH 第五章:CDH的安装和部署-CDH5.7.0
相关文章链接 CentOS7安装CDH 第一章:CentOS7系统安装 CentOS7安装CDH 第二章:CentOS7各个软件安装和启动 CentOS7安装CDH 第三章:CDH中的问题和解决方法 ...
- linq学习(二)
百度搜索:C# linq查询新对象 直接从list中查出一个新对象集合. 文章:https://blog.csdn.net/lym940928/article/details/80278783 fro ...
- tp5 左连接
db('detainform')->alias('d')->join("information i",'i.z_id=d.z_id','LEFT')->where ...
- slice(), splice(),split(),indexOf(),join(),replace()
1.slice() slice() 方法可以接受一或两个参数,即要返回项的起始和结束位置. 在只有一个参数的情况下, slice() 方法返回从该参数指定位置开始到当前数组末尾的所有项. 如果有两个参 ...
- centos ntfs-3g not find
1,CentOS默认源里没有ntfs3g,想要添加ntfs支持,需要自己下载编译安装或者加源yum安装.我这里使用的是添加aliyun的epel源来yum安装的方式. 2,添加epel yum源wge ...
- 运营中CP(X)的名词含义
一.名词含义 我们在做产品推广时,最常见的合作方式有CPA/CPS/CPC/CPM,以及不常见的CPD/CPT/CPL,以下来详细解释这7个名词. CPA:指的是按激活或者注册付费,比如一个激活,就是 ...
- struts2之使用oracle分页(10)
ToolsUtil //每页显示的记录数 public static final int NUM_PER_PAGE=5; /* * java.util.Date转java.sql.Date */ pu ...
- ACM-ICPC 2018 南京赛区现场赛 E. Eva and Euro coins (思维)
题目链接:https://codeforc.es/gym/101981/attachments 题意:给出两个只包含01的字符串,每次可以选择连续k个相同的数字进行翻转,问能否通过若干次操作把两个字符 ...
- 8、Spring Boot 2.x 服务器部署
1.8 服务器部署 完整源码: Spring-Boot-Demos 1.8.1 jar包提取出来maven打包(避免每次重复打相同的jar包),pom.xml配置如下: <build> & ...
- SVN安装与汉化
官网地址:http://tortoisesvn.net/downloads.html 如地址过期可自行百度官网,下载安装包安装64/32位 如果需要汉化的同学,同样在下载页面,往下拉Language ...