一.流程函数

mysql 开发基础系列7 流程函数与其它函数 Mysql 第1张

-- 创建表来介绍
CREATE TABLE salary (userid INT,salary DECIMAL(9,2));
INSERT INTO salary VALUES(1,1000),(2,2000), (3,3000),(4,4000),(5,5000), (1,NULL);
SELECT * FROM salary

1. if(value,t,f)  超过2000的用high,否则用low

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
SELECT IF(salary>2000 ,'high','low') FROM salary

mysql 开发基础系列7 流程函数与其它函数 Mysql 第2张

2. ifnull(value1,value2) 下面语句是把null值替换0

SELECT IFNULL(salary,0) FROM salary;

mysql 开发基础系列7 流程函数与其它函数 Mysql 第3张

3.case when ...   用来实现中高低薪的问题

SELECT CASE 
WHEN salary<=2000 THEN 'low' 
WHEN salary>=2001 AND salary<=4000 THEN'middle' 
ELSE 'high'  END 
FROM salary;

mysql 开发基础系列7 流程函数与其它函数 Mysql 第4张

二. 其它常用函数

mysql 开发基础系列7 流程函数与其它函数 Mysql 第5张

SELECT 
DATABASE() AS '数据库名',
VERSION() AS '数据库版本',
USER() AS '当前用户名',
INET_ATON('192.168.1.1')AS 'IP字节',
INET_NTOA(3232235777) AS 'ip字节转IP'

mysql 开发基础系列7 流程函数与其它函数 Mysql 第6张

2. PASSWORD 返回加密后的字符,一般用来设置系统用户的密码

SELECT PASSWORD('123456')

mysql 开发基础系列7 流程函数与其它函数 Mysql 第7张

3. md5(str) 对一般应用数据加密

SELECT MD5('123456');

mysql 开发基础系列7 流程函数与其它函数 Mysql 第8张

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄