【MySQL】函数

函数

函数是指一段可以直接被另一段程序调用的程序或代码。

【MySQL】函数_第1张图片

字符串函数

【MySQL】函数_第2张图片

select 函数(参数);
select concat('hello',' mysql');
select LPAD('01',5,'-');

select trim(' hello mysql ');

select SUBSTRING('hello world',1,5);

由于业务需求变更,企业员工的工号,统一为5位数,目前不足5位数的全部在前面补上0。

比如:1号员工的工号应该为00001。

update user set workno=lpad(workno,5,'0');

数值函数

【MySQL】函数_第3张图片

通过数据库的函数,生成一个六位数的随机验证码。

select rpad(round(rand()*1000000,0),6,'0');

日期函数

【MySQL】函数_第4张图片

select CURDATE();
SELECT CURTIME();

【MySQL】函数_第5张图片

select now();

select year(now());

SELECT MONTH(NOW());

select DAY(now());

select DATE_ADD(NOW(),INTERVAL 70 DAY);
往后查询第70天是哪一天

select DATEDIFF('2024-01-17','2022-2-17');

查询所有员工的入职天数,并根据入职天数倒序排序

select name,datadiff(curdate(),entrydate) as 'entrydays' from user order by entrydays desc;

流程函数

【MySQL】函数_第6张图片

select IF(true,'ok','false');

select IFNULL(NULL,'default');

查询user表中的员工姓名和工作地址(北京/上海—>一线城市,其他—>二线城市)

select
	name,
	(case workaddress when '北京' then '一线城市' when '上海' then '一线城市' else '二线城市' end) as '工作地址'
from user;

统计班级各个学员的成绩

>=85,优秀

>=60,及格

其他为不及格

select
	id,
	name,
	(case when math>=85 then '优秀' when math>=60 then '及格' else '不及格' end) as '数学',
	(case when english>=85 then '优秀' when english>=60 then '及格' else '不及格' end) as '英语'
from score;

【MySQL】函数_第7张图片

你可能感兴趣的:(MySQL,mysql,数据库)