Mysql常见函数及其用法

这篇文章主要讲解mysql常见函数的用法和意义,包括字符串函数、数值函数、日期函数、流程函数。


1.字符串函数

① CONCAT(S1,S2,…,Sn):讲S1到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个长度的字符串。
在这里插入图片描述


2. 数值函数

① CEIL(X):向上取整;
在这里插入图片描述

② FLOOR(X):向下取整;
在这里插入图片描述

③ MOD(X,Y);返回X/Y的模;
在这里插入图片描述
④ RAND():返回0~1之间的随机数;
在这里插入图片描述

⑤ ROUND(X,Y):求X的四舍五入的值,并保留Y位小数;
在这里插入图片描述例:生成一个6位数的随机验证码:
在这里插入图片描述


3. 日期函数

① CURDATE():返回当前日期;
在这里插入图片描述

② CURTIME():返回当前时间;
在这里插入图片描述

③ NOW();返回当前日期+时间;
在这里插入图片描述

④ YEAR(date):获取指定date的年份;
在这里插入图片描述

⑤ MONTH(date):获取指定date的月份;
在这里插入图片描述

⑥ DAY(date):获取指定date的天数;
在这里插入图片描述

⑦ DATE_add(date, INTERVEL expr type):返回一个指定日期/时间 date加上一个expr值之后的时间值;
在这里插入图片描述

⑧ DATEDIFF(date1, date2):返回两个日期之间间隔的天数;
在这里插入图片描述


4. 流程函数

① IF(value, t, f):如果value的表达式为true,返回t,否则返回;
在这里插入图片描述

② IFNULL(value1, value2):如果value1不为空,返回value1,否则返回value2;
在这里插入图片描述

③ CASE WHEN [val1] THEN [res1]…ELSE [DEFAULT] END:如果val1为ture,返回值res1,…否则返回值default;
现有2张表,一个学生信息表student和分数表sc,表如下,需要判断分数字大于80的为优秀,大于60的为及格,其他为不及格:
学生表:在这里插入图片描述
分数表:
在这里插入图片描述
编写sql语句如下:

select s.*, (case when sc.score>80 then '优秀' when sc.score>60 then '及格' else '不及格' end )as 'level' from student as s
 left join sc on s.SId = sc.SId;

执行结果为:
在这里插入图片描述
④ CASE [expr] WHEN [val1] THEN [res1]…ELSE [defalut] END:如果expr值等于val1就返回res1,否则就返回值defalut。

猜你喜欢

转载自blog.csdn.net/m0_37742400/article/details/131501029
今日推荐