MySQL条件判断IF,CASE,IFNULL语句详解
MySQL条件判断IF,CASE,IFNULL语句详解
1.IF语句的基本用法
IF(condition, true_statement, false_statement);
condition: 条件表达式,可以是任何返回布尔值的表达式。
true_statement: 如果条件为真,则执行的语句。
false_statement: 如果条件为假,则执行的语句。
demo
SELECT id, name, score, IF(score >= 90, 'A', IF(score >= 80, 'B', 'C')) AS grade FROM students; #统计修改次数,大于1次标识“修改多”,否则标识“修改少”
IF(COUNT(1) > 1,'修改多','修改少') AS '修改频率',
2.CASE语句
CASE expression
WHEN value1 THEN result1
WHEN value2 THEN result2
...
ELSE result
END;
expression: 表达式,用于进行比较的值。
WHEN value THEN result: 当expression等于value时,返回result。
ELSE result: 如果没有匹配的条件,则返回result。
demo
SELECT id, name, price,
CASE
WHEN price > 1000 THEN '高价'
WHEN price > 500 THEN '中价'
ELSE '低价'
END AS price_range
FROM products; CASE category
WHEN 1 THEN '订单类型1'
WHEN 2 THEN '订单类型2'
WHEN 3 THEN '订单类型3'
WHEN 4 THEN '订单类型4'
ELSE '未知'
END '订单类型', CASE
WHEN category = 1 THEN '订单类型1'
WHEN category = 2 THEN '订单类型2'
WHEN category = 3 THEN '订单类型3'
WHEN category = 4 THEN '订单类型4'
ELSE '未知'
END '订单类型',
3.IFNULL函数
IFNULL(expression, value);
expression: 表达式,用于判断是否为NULL。
value: 如果expression为NULL,则返回的值。
demo:
SELECT IFNULL(NULL,'判断空'); #输出: 判断空
SELECT IFNULL('非NULL','判断空'); #输出: 非NULL
MySQL条件判断IF,CASE,IFNULL语句详解的更多相关文章
- Shell case in语句详解
和其它编程语言类似,Shell 也支持两种分支结构(选择结构),分别是 if else 语句和 case in 语句.在<Shell if else>一节中我们讲解了 if else 语句 ...
- mysql基础篇 - SELECT 语句详解
基础篇 - SELECT 语句详解 SELECT语句详解 一.实验简介 SQL 中最常用的 SELECT 语句,用来在表中选取数据,本节实验中将通过一系列的动手操作详细学习 SELEC ...
- 【转】MySQL用户管理及SQL语句详解
[转]MySQL用户管理及SQL语句详解 1.1 MySQL用户管理 1.1.1 用户的定义 用户名+主机域 mysql> select user,host,password from mysq ...
- MySQL条件判断处理函数_20160925
MySQL条件判断处理 一.假如我想把salesperson 分成 5组,计算每个销售分组的业绩 首先先将销售分组 SELECT *, CASE WHEN salesperson IN (" ...
- MySQL之SELECT 语句详解
本文参考实验楼的SELECT 语句详解结合自己操作部分而写成. 注意:大多数系统中,SQL语句都是不区分大小写的,但是出于严谨和便于区分保留字和变量名,在书写的时,保留字应大写,而变量名应小写.所谓的 ...
- MYSQL服务器my.cnf配置文档详解
MYSQL服务器my.cnf配置文档详解 硬件:内存16G [client] port = 3306 socket = /data/3306/mysql.sock [mysql] no-auto-re ...
- mysql服务性能优化—my.cnf配置说明详解
MYSQL服务器my.cnf配置文档详解硬件:内存16G [client]port = 3306socket = /data/3306/mysql.sock [mysql]no-auto-rehash ...
- MySQL慢查询(二) - pt-query-digest详解慢查询日志 pt-query-digest 慢日志分析
随笔 - 66 文章 - 0 评论 - 19 MySQL慢查询(二) - pt-query-digest详解慢查询日志 一.简介 pt-query-digest是用于分析mysql慢查询的一个工具,它 ...
- Mysql高手系列 - 第14篇:详解事务
这是Mysql系列第14篇. 环境:mysql5.7.25,cmd命令中进行演示. 开发过程中,会经常用到数据库事务,所以本章非常重要. 本篇内容 什么是事务,它有什么用? 事务的几个特性 事务常见操 ...
- T-SQL_select语句详解
select语句执行的过程: 先看查询内容 ==>where条件 ==>[分组条件] ==>[分组搜索条件] ==>内容输出 ==>[是否排序] SQL中SELECT语句 ...
随机推荐
- KubeVela:标准化的云原生平台构建引擎
简介: 本文由"GO 开源说"第三期 KubeVela 直播内容修改整理而成,视频内容较长,本文内容有所删减和重构. KubeVela 的背景 KubeVela 是一个基于 Go ...
- MongoDB 5.0新特性概览
简介: MongoDB 5.0标志着一个新的发布周期的到来,以更快地交付新特性给到用户.版本化API与在线重新分片相结合,使用户不必担心未来的数据库升级以及业务变化问题:本地原生时间序列数据平台也使 ...
- dotnet OpenXML 利用合并表格单元格在 PPT 文档插入不可见的额外版权信息
本文告诉大家如何利用 Office 对于 OpenXML 支持的特性,在 PPT 的表格里面,通过合并单元格存放一些额外的信息,这些信息对用户来说是不可见的,但是进行拷贝表格等的时候,可以保存此信息内 ...
- 5.prometheus监控--监控nginx
1.监控程序环境准备 mkdir /data/docker-compose -p cd /data/docker-compose cat > docker-compose.yaml <&l ...
- STM32F10x 串口使用DMA
一.DMA简介 DMA(Direct Memory Access,直接存储器访问) 是所有现代电脑的重要特色,它允许不同速度的硬件装置来沟通,而不需要依赖于 CPU 的大量中断负载.否则,CPU 需要 ...
- 用Vue仿了一个类似抖音的App
大家好,我是 Java陈序员. 今天,给大家介绍一个基于 Vue3 实现的高仿抖音开源项目. 关注微信公众号:[Java陈序员],获取开源项目分享.AI副业分享.超200本经典计算机电子书籍等. 项目 ...
- WordPress函数小结
1.body_class()函数 为了区分不同的页面,可以用WordPress的body_class()函数 可以在head.php中给body添加:<body <?php body_cl ...
- ContextCapture中的模型航拍方法和技巧
在进行实景建模之前,获取被拍摄物体的照片是很重要的一项工作,因为如果没有按照规则拍摄或者拍摄相片质量不佳,将会直接影响我们后期建模,甚至无法建模. 我们建议使用ContextCapture进行建模,则 ...
- vue特殊atribute-is
1.解决dom内模板限制 有些 HTML 元素,诸如 <ul>.<ol>.<table> 和 <select>,对于哪些元素可以出现在其内部是有严格限制 ...
- 日常Bug排查-连接突然全部关闭
日常Bug排查-连接突然全部关闭 前言 日常Bug排查系列都是一些简单Bug的排查.笔者将在这里介绍一些排查Bug的简单技巧,同时顺便积累素材. Bug现场 最近碰到一个问题,一台机器上的连接数在达到 ...