网站制作有哪些方面,免费发外链的网站,厦门软件园网站开发,做网站在哪里找素材#x1f3a5; 屿小夏 #xff1a; 个人主页 #x1f525;个人专栏 #xff1a; MySQL从入门到进阶 #x1f304; 莫道桑榆晚#xff0c;为霞尚满天#xff01; 文章目录 #x1f4d1;前言一. MySQL函数概论二. 字符串函数三. 数值函数四. 日期函数五. 流程函数#x1… 屿小夏 个人主页 个人专栏 MySQL从入门到进阶 莫道桑榆晚为霞尚满天 文章目录 前言一. MySQL函数概论二. 字符串函数三. 数值函数四. 日期函数五. 流程函数️全篇总结 前言 MySQL中的函数是一种强大的工具可以帮助我们在数据库中快速处理数据完成各种业务需求。本文将深入介绍MySQL中的字符串函数、数值函数、日期函数和流程函数通过实例演示和详细解释帮助读者掌握这些函数的使用方法从而提高数据库操作的效率和灵活性。 一. MySQL函数概论
函数 是指一段可以直接被另一段程序调用的程序或代码。 也就意味着这一段程序或代码在MySQL中已经给我们提供了我们要做的就是在合适的业务场景调用对应的函数完成对应的业务需求即可。 那么函数到底在哪儿使用呢 在企业的OA或其他的人力系统中经常会提供的有这样一个功能每一个员工登录上来之后都能够看到当前员工入职的天数。 而在数据库中存储的都是入职日期如 2000-11-12那如果快速计算出天数呢在做报表这类的业务需求中,我们要展示出学员的分数等级分布。而在数据库中存储的是学生的分数值如98/75如何快速判定分数的等级呢
其实上述的这一类的需求呢我们通过MySQL中的函数都可以很方便的实现 。
MySQL中的函数主要分为以下四类 字符串函数、数值函数、日期函数、流程函数。
二. 字符串函数
MySQL中内置了很多字符串函数常用的几个如下
函数功能CONCAT(S1,S2,…Sn)字符串拼接将S1S2… Sn拼接成一个字符串LOWER(str)将字符串str全部转为小写UPPER(str)将字符串str全部转为大写LPAD(str,n,pad)左填充用字符串pad对str的左边进行填充达到n个字符 串长度RPAD(str,n,pad)右填充用字符串pad对str的右边进行填充达到n个字符 串长度TRIM(str)去掉字符串头部和尾部的空格SUBSTRING(str,start,len)返回从字符串str从start位置起的len个长度的字符串
演示如下
A. concat : 字符串拼接
select concat(Hello , MySQL);B. lower : 全部转小写
select lower(Hello);C. upper : 全部转大写
select upper(Hello);D. lpad : 左填充
select lpad(01, 5, -);E. rpad : 右填充
select rpad(01, 5, -);F. trim : 去除空格
select trim( Hello MySQL );G. substring : 截取子字符串
select substring(Hello MySQL,1,5);三. 数值函数
常见的数值函数如下
函数功能CEIL(x)向上取整FLOOR(x)向下取整MOD(x,y)返回x/y的模RAND()返回0~1内的随机数ROUND(x,y)求参数x的四舍五入的值保留y位小数
演示如下
A. ceil向上取整
select ceil(1.1);B. floor向下取整
select floor(1.9);C. mod取模
select mod(7,4);D. rand获取随机数
select rand();E. round四舍五入
select round(2.344,2);四. 日期函数
常见的日期函数如下
函数功能CURDATE()返回当前日期CURTIME()返回当前时间NOW()返回当前日期和时间YEAR(date)获取指定date的年份MONTH(date)获取指定date的月份DAY(date)获取指定date的日期DATE_ADD(date, INTERVAL expr type)返回一个日期/时间值加上一个时间间隔expr后的 时间值DATEDIFF(date1,date2)返回起始时间date1 和 结束时间date2之间的天 数
演示如下 A. curdate当前日期
select curdate();B. curtime当前时间
select curtime();C. now当前日期和时间
select now();D. YEAR , MONTH , DAY当前年、月、日
select YEAR(now());
select MONTH(now());
select DAY(now());E. date_add增加指定的时间间隔
select date_add(now(), INTERVAL 70 YEAR );F. datediff获取两个日期相差的天数
select datediff(2021-10-01, 2021-12-01);五. 流程函数
流程函数也是很常用的一类函数可以在SQL语句中实现条件筛选从而提高语句的效率。
函数功能IF(value , t , f)如果value为true则返回t否则返回 fIFNULL(value1 , value2)如果value1不为空返回value1否则 返回value2CASE WHEN [ val1 ] THEN [res1] … ELSE [ default ] END如果val1为true返回res1… 否 则返回default默认值CASE [ expr ] WHEN [ val1 ] THEN [res1] … ELSE [ default ] END如果expr的值等于val1返回 res1… 否则返回default默认值
演示如下
A. if
select if(false, Ok, Error);B. ifnull
select ifnull(Ok,Default);
select ifnull(,Default);
select ifnull(null,Default);C. case when then else end
需求: 查询emp表的员工姓名和工作地址 (北京/上海 ---- 一线城市 , 其他 ---- 二线城市)
selectname,( case workaddress when 北京 then 一线城市 when 上海 then 一线城市 else二线城市 end ) as 工作地址
from emp;️全篇总结
本文详细介绍了MySQL中常用的字符串函数、数值函数、日期函数和流程函数包括各种函数的功能、语法和实际应用。通过学习本文读者可以掌握在实际业务场景中如何灵活运用这些函数从而更高效地处理数据库中的数据满足各种业务需求。