数据库中的case when ,if ,if null
- case when then else end
Case when 语句能在sql语句中植入语句判断的逻辑,类似于if else语句
1 case 字段 when 什么时候 then 结果 else 结果2 end
sex 为 1 等于男 0 等于女 该怎么将数字转化成汉字呢?
SQL : select name,(case sex when 0 then “女” when 1 then “男” end)sex from table
2 第二种编写方式,使用表达式来做显示
case
when 条件 then result1 else result2
end
如果条件为true 返回result1 不符合条件的返回为null 可以有多个when then end表示是结束,
场景:score 大于90为优秀,80以上为良好,60是及格 其他的不及格,
SQL:select name,score,(case
when score>=90 then “优秀”
when score>=80 then “良好”
when score>=60 then “及格”
else “不及格”
end) level from table
3 将列转化成行
SQL:SELECT
name,
MAX(CASE course WHEN ‘语文’ THEN score ELSE 0 END) AS ‘语文’,
max(CASE course WHEN ‘数学’ THEN score ELSE 0 END) AS ‘数学’,
max(CASE course WHEN ‘英语’ THEN score ELSE 0 END) AS ‘英语’,
AVG(score) AS ‘平均成绩’
FROM score GROUP BY name;
if
if函数可以通过判断条件来返回特定值,
语法:if(表达式,结果1,结果2)
根据表达式 true返回结果1,false 返回结果2
例子:select name,if(sex = 1,“男”,“女”)sex from tableifnull
为了防止null的尴尬 用特定的值来代替null
select ifnull(price,0)price from goods where name =“light”;case的位置
示例
在select 之后 主要是控制显示
只显示在城市的人名和工资
SELECT name,case when city = '北京' THEN salary END FROM EMP
where 之后
-- 如果在北京 那么只显示工资大于6666的信息 如果 如果在在上海只显示大于4k的
select * from EMP where (case when city = '北京' then salary end )>6666 or (case when city = '上海' then salary end)>4000
- 解决字符集不匹配的问题
select case when htbh ‘0’ then Translate(‘无’ USING NCHAR_CS) else htbh end from VIEW_EU_HTQC_VALID - union 解决字符集不匹配的问题 和添加一个无的数据
select to_char(case when dummy= 'X' then '无' else dummy end) as htbh from dual
union all
select to_char(htbh) from VIEW_EU_HTQC_VALID
WHERE ISEND = 1 ORDER BY HTBH DESC ========================SELECT '无' AS HTBH,'无' AS HTMC FROM dual
UNION ALL
SELECT TO_CHAR(HTBH),TO_CHAR(HTMC) FROM VIEW_EU_HTQC_VALID
WHERE ISEND = 1
数据库中的case when ,if ,if null相关推荐
- Access数据库中Sum函数返回空值(Null)时如何设置为0
在完成一个Access表中数据统计时,需要统计指定字段的和,使用到了Sum函数,但统计时发现,指定条件查询统计时有可能返回空值(Null),导致对应字段显示为空白,正常应显示为0.基本思路是在获取记录 ...
- 查找数据库中一条指定字段为NULL的数据
比如我数据表有一条记录:id为1,name为空值,如果我直接 字段='' 去查询这个表,是无法找到这条数据的,可以 字段 IS NULL 来找到这条数据
- python 空值_数据库中的空值与NULL的区别以及python中的NaN和None
展开全部 数据库里面的"32313133353236313431303231363533e59b9ee7ad9431333363393632空值"有两种:空字符("&qu ...
- 数据库中case when condition then else end的理解
数据库中case when condition then else end的理解 数据库中根据不同的条件求数量或者是总数 select count(case when status=0 then 'd ...
- 关于数据库中NULL的描述,下列哪些说法符合《阿里巴巴Java开发手册》
关于数据库中NULL的描述,下列哪些说法符合<阿里巴巴Java开发手册>:答案在文末 A. NULL=NULL的返回结果为true. B. NULL与任何值的比较结果都为NULL. C. ...
- Case Study: 利用PHP获取关系型数据库中多张数据表的数据
一.目标 该笔记的目的是引导读者借助WampServer平台和MySQL数据库,利用HTML/CSS/JS/PHP设计一个多数据表关联的网页.在上一个案例(Case Study: 利用JS实现数据库网 ...
- oracle sql为null值,在SQL Server Oracle MySQL当数据库中查出某值为NULL怎么办
在SQL Server Oracle MySQL当数据库中查出某值为NULL怎么办? 1.MSSQL: ISNULL() 语法 ISNULL ( check_expression , replacem ...
- 数据库中的null和c#中的null
再向数据库中插入数据时,如果插入c#中的null会报错,需要转换成SQl中的DBNull.Value public static object ToDbNull(object value) ...
- mysql中的钱null_MySQL数据库中null的知识点总结
在mysql数据库中,null是一个经常出现的情况,关于mysql中的null,有哪些注意事项呢?下面简单总结归纳下,后续会不断补充. 1. is null 首先判断数据库中某一列的值是否为null, ...
- 数据库中case when 的用法
CASE WHEN 及 SELECT CASE WHEN的用法 Case具有两种格式.简单Case函数和Case搜索函数. 1.简单Case函数 CASE sex WHEN '1' THEN '男' ...
最新文章
- 给未来元素添加事件 jquery 1.10.2 版本
- Python CNN风格迁移
- Python学习 8day__高级语法
- java web容器原理_javaWeb工作原理
- 先生,要点单吗? (HTTP协议概览)
- unixODBC的使用
- [转载] numpy的属性和函数
- docker php 一键部署_提升10倍生产力:IDEA远程一键部署SpringBoot到Docker
- 基于WEB的网上购物系统的设计与实现(附:源码 论文 sql文件)
- 笔记 左程云算法基础
- 小米手机hbuilder开发者模式
- java-for循环9的倍数(基础)
- 基于FPGA的两种SDI视频方案(GTX+外接芯片)
- xp怎样修改计算机mac地址,WinXP系统MAC地址修改的方法
- java.lang.NoClassDefFoundError: Could not initialize class com.cyj.util.Jdbc
- 提交百度快速收录真的能达到秒收录吗
- 最简单linux桌面环境,推荐:轻型简易的Linux桌面环境
- 用IntelliJ IDEA自带的文本差异对比器
- wstmart不错。可以用用
- java如何调用pyramid函数_讲解:ICM、Pyramid、JAVA,PYTHON、PYTHON ,C++SPSS| Statis
热门文章
- [leetcode] @python 113. Path Sum II
- Wine——在Linux上运行Windows软件
- 关于C#编译器错误CS0685(VS2005)
- C++ / vs 如何生成自己的静态库(lib)文件
- php 盒子边距,CSS 盒子模型外边距
- 微服务 前台调用后台的慢的原因_也只有阿里P8出身的他能把SpringCloud微服务架构商城项目整的这么干了...
- 拓端tecdat|R语言中GLM(广义线性模型),非线性和异方差可视化分析
- 拓端tecdat|R平方/相关性取决于预测变量的方差
- 计算机专业新手博客,【转载】学计算机必读献给计算机专业大一新生(1)
- js基础知识汇总07