mysql流程函数if之类
表名: salary
————————
userid | salary|
————————
1 | 1000
2 | 2000
3 | 3000
4 | null
...
IF(value, t, f) 如果value是真, 返回t;否则返回f
举例:
select if(salary>2000, 'high', 'low') from salary
注意: 这里会把null当成false处理
IFNULL(value1, value2) 如果value1不为空, 则返回value1, 否则返回value2
举例:
select ifnull(salary, 0) from salary case when [value1] then [result1]... else [default] end 如果value1是真, 返回result,否则返回default
类似if()但又不同于
举例:
select case when salary <= 2000 then 'low' else 'high' end from salary;
注意: 这里会把null当成不满足条件处理, 得到high, 因为null 不是<= 2000的 case 【expr】 when 【value1】 then 【result】... else [default] end 如果expr等于value1, 返回result1, 否则返回default
有点类似于python的if条件
举例:
select salary when 1000 then 'low' when 2000 then 'high' else 'mid' end
mysql流程函数if之类的更多相关文章
- mysql 流程函数
一 , 流程函数 函数 功能 if(value,t f) 如果value是真,返回t;否则返回f ifnull(value1,value2) 如果valve1不为空返回value1,否则返回value ...
- mysql 流程函数 存储引擎 InnoDB简单特性
建表及插入数据语句: mysql> create table salary(userid int,salary decimal(9,2)); Query OK, 0 rows affected ...
- MySQL流程函数
#如果value是真,返回t:否则返回f if(value,t f) #如果value1不为空,返回value1,否则返回value2 ifnull(value1,value2) #如果value1是 ...
- MySQL数据库学习笔记(四)----MySQL聚合函数、控制流程函数(含navicat软件的介绍)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- MySQL聚合函数、控制流程函数(含navicat软件的介绍)
MySQL聚合函数.控制流程函数(含navicat软件的介绍) 一.navicat的引入:(第三方可视化的客户端,方便MySQL数据库的管理和维护) NavicatTM是一套快速.可靠并价格相宜的数据 ...
- MySQL自定义函数用法详解-复合结构自定义变量/流程控制
自定义函数 (user-defined function UDF)就是用一个象ABS() 或 CONCAT()这样的固有(内建)函数一样作用的新函数去扩展MySQL. 所以UDF是对MySQL功能的一 ...
- MySQL 聚合函数 控制流程函数
常用的聚合函数 1. AVG() 求平均值 mysql> AVG([DISTINCT] expr) -- 返回 expr 的平均值 mysql> select AVG(age) from ...
- MySQL聚合函数、控制流程函数
[正文] 一.navicat的引入:(第三方可视化的客户端,方便MySQL数据库的管理和维护) NavicatTM是一套快速.可靠并价格相宜的数据库管理工具,专为简化数据库的管理及降低系统管理成本而设 ...
- mysql 开发基础系列7 流程函数与其它函数
一.流程函数 -- 创建表来介绍 ,)); ,),(,), (,),(,),(,), (,NULL); SELECT * FROM salary 1. if(value,t,f) 超过2000的用h ...
随机推荐
- centos 7 忘记密码
修改rd.lvm.lv=cl/swap(我的是虚似机如果是实体机的话应该是ro_rd.lvm.lv=centos/swap)改成 rw init=/sysroot/bin/sh 注意上图rw init ...
- android studio : clang++.exe: error: invalid linker name in argument '-fuse-ld=bfd
公司jenkins上的C++编译器最近换成了clang,今天更新了代码发现本地的C/C++代码用NDK编译不过了,提示: “clang++.exe: error: invalid linker nam ...
- [Windows Azure] How to Scale an Application
How to Scale an Application To use this feature and other new Windows Azure capabilities, sign up fo ...
- (转)在Docker中运行Java:为了防止失败,你需要知道这些
转自:https://mp.weixin.qq.com/s?__biz=MzA5OTAyNzQ2OA==&mid=2649693848&idx=1&sn=4e9ef7e2a9d ...
- Mac上把python源文件编译成so文件
把python源文件编译成so文件 前言 实际上属于一种代码混淆/加密的技术,大家知道python的源文件放在那里,大家是都可以看的,不像C语言编译出来可以拿编译后的东西去运行,所以就出现了这种需求. ...
- AAPT err(Facade for): libpng error: Not a PNG file 错误解决
在导入项目到Android studio后,若编译出现“AAPT err(Facade for): libpng error: Not a PNG file”错误. 该错误表示项目中的drawable ...
- 确保安全的HTTPS(使用混合加密的HTTPS,前端面试常问)第二篇
苹果已经确定,在iOS9中通信机制采用HTTPS了. 第一篇:http://www.cnblogs.com/ziyi--caolu/p/4742577.html 上一篇详细介绍了为什么要对HTTP进行 ...
- Android开发(三十)——ScrollView中ListView的高度自动适应
int totalHeight = 0; for (int i = 0; i < mStrings.length; i++) { //pullList ListView //mAdapter A ...
- 百度BAE使用ueditor 上传图片
研究BAE 也有一段时间了,但一直无法解决BAE 上传图片的问题. 在阅读了 http://blog.csdn.net/auver/article/details/10103789 和 http:// ...
- [EF] 如何在 Entity Framework 中以手动方式设定 Code First 的 Migration 作业
Entity Framework (简称 EF) 发展到现在, 版本已经进入 6.1.0, 距离我写的「在 VS2013 以 Code First 方式建立 EF 资料库」这篇文章已有半年的时间.如果 ...