> 作者:დ旧言~
> 座右铭:松树千年终是朽,槿花一日自为荣。> 目标:了解MySQL的相关的内置函数,并能熟练使用。
> 毒鸡汤:有些事情,总是不明白,所以我不会坚持。早安!
> 专栏选自:带你玩转MySQL
> 望小伙伴们点赞👍收藏✨加关注哟💕💕
一、前言
想必大家在学校也学习过MySQL,可能学的懵懵懂懂,这个板块我们从入门开始,从最新的安装MySQL到学习MySQL语句,一步一步开始,一切都是新的,新的板块新的开始,大家一起努力,一起进步!!!
二、主体
学习【MySQL】内置函数咱们按照下面的图解:
2.1 日期函数
康康常见的日期函数:
2.1.1 函数的使用
current_date 函数:
作用:
获取年月日。
使用:
select current_date();
select current_date();
+----------------+
| current_date() |
+----------------+
| 2024-10-7 |
+----------------+
current_time 函数:
作用:
获得时分秒。
使用:
select current_time();
select current_time();
+----------------+
| current_time() |
+----------------+
| 23:52:31 |
+----------------+
current_stamp 函数:
作用:
获得时间戳。
使用:
select current_timestamp();
select current_timestamp();
+---------------------+
| current_timestamp() |
+---------------------+
| 2024-10-7 23:55:48 |
+---------------------+
date_add() 函数:
作用:
在日期的基础上加日期。
使用:
select date_add('2024-10-7', interval 10 day);
select date_add('2024-10-7', interval 10 day);
+-----------------------------------------+
| date_add('2024-10-7', interval 10 day) |
+-----------------------------------------+
| 2024-10-17 |
+-----------------------------------------+
date_sub() 函数:
作用:
在日期的基础上减去时间。
使用:
select date_sub('2024-10-7', interval 2 day);
select date_sub('2024-10-7', interval 2 day);
+---------------------------------------+
| date_sub('2024-10-7', interval 2 day) |
+---------------------------------------+
| 2024-10-05 |
+---------------------------------------+
datediff 函数:
作用:
计算两个日期之间相差多少天。
使用:
select datediff('2024-10-7', '2024-10-5');
select datediff('2024-10-7', '2024-10-5');
+------------------------------------+
| datediff('2024-10-7', '2024-10-5') |
+------------------------------------+
| 2 |
+------------------------------------+
now 函数:
作用:
获取当前的日期和时间。
使用:
select now();
data 函数:
作用:
用于获取当前的日期时间。
使用:
select date(now());
2.1.2 案例分析
创建一个评论表,表中包含自增长主键id、昵称、评论内容和评论时间:
mysql> create table comment_form(
-> nickname varchar(20) not null,
-> content varchar(50) not null,
-> sendtime datetime
-> );
Query OK, 0 rows affected (0.01 sec)
向表中插入一些数据,插入时直接通过now函数指明评论时间:
mysql> insert into comment_form (nickname,content,sendtime) values ('张三','2024继续加油!',now());
Query OK, 1 row affected (0.01 sec)
mysql> insert into comment_form (nickname,content,sendtime) values ('李四','新的一年再接再厉哦!',now());
Query OK, 1 row affected (0.01 sec)
显示所有名称,信息,和时间(时间只显示日期):
select name,content,date(sendtime) from mes;
查看两个小时之前的评论:
select name,content,sendtime from mes where sendtime>date_sub(now(),interval 2 hour);
2.2 字符串函数
康康常见的字符串函数:
2.2.1 函数的使用
charset() 函数:
作用:
返回字符串的字符集。
使用:
select ename,charset(ename) from emp;
concat() 函数:
作用:
格式化显示留言板信息:格式:name说:”content”,时间:sendtime。
使用:
select concat(name,'的语文是',chinese,'分,数学是',math,'分,英语是',english,'分') 成绩概览 from exam_result;
instr 函数:
作用:
instr函数用于获取一个字符串在另一个字符串中首次出现的位置,如果没有出现则返回0。
使用:
select instr('2024新年快乐','2024');
ucase 函数:
作用:
ucase函数用于获取转换成大写之后的字符串。
使用:
select ucase('fdsafdsafdsafdsaAQWERTYUIO');
lcase 函数:
作用:
lcase函数用于获取转换成小写后的字符串。
使用:
select lcase('ASDFGGHHJ');
left 函数:
作用:
left函数用于从字符串的左边开始,向后截取指定个数的字符。
使用:
select left('123456789',5);
length 函数:
作用:
length函数用于获取字符串占用的字节数。
使用:
注意:
汉字的字节数和字母的字节数是不一样的,具体根据编码来判定。
replace 函数:
作用:
replace函数用于将字符串中的指定子字符串替换成另一个字符串。
使用:
select ename,replace(ename,'S','666') from emp;
strcmp 函数:
作用:
strcmp函数用于逐字符按照ASCII码比较两个字符串的大小,两个字符串大小相等返回0,前者大返回1,后者大返回-1.
使用:
substring 函数:
作用:
substring函数用于从字符串的指定位置开始,向后截取指定个数的字符。如果没有指定要截取的字符个数,则默认从指定位置开始截取到最后。
使用:
select substring('123456',2,3);
ltrim、rtrim、trim 函数:
作用:
- ltrim:去除左边的空格。
- rtrim:去除右边的空格。
- trim:去除前后空格。
使用:
2.3 数学函数
康康常见的数学函数:
2.3.1 函数的使用
abs 函数:
作用:
取绝对值。
使用:
select abs(-1024);
bin 函数:
作用:
bin函数用于将一个十进制数转换成二进制。
使用:
select bin(10);
hex 函数:
作用:
hex函数用于将一个十进制数转换成十六进制。
使用:
select hex(10);
conv 函数:
作用:
conv函数用于将一个数从一个进制转换成另一个进制。
使用:
select conv('A',16,10);
ceiling 函数:
作用:
ceiling函数用于对一个数进行向上取整。
使用:
select ceiling(3.3);
floor 函数:
作用:
floor函数用于对一个数进行向下取整。
使用:
select floor(3.3);
format 函数:
作用:
format函数用于对数值进行格式化,以四舍五入的方式保留指定位数的小数。
使用:
select format(3.1415926,2);
rand 函数:
作用:
rand函数用于生成 0.0到1.0 的随机浮点数。如果想要生成0到100的随机数,可以用生成随机浮点数乘以100,然后再以某种取整的方式进行取整。
使用:
mod 函数:
作用:
mod函数用于对数值进行求余运算。
使用:
2.4 其它函数
user 函数:
作用:
user函数用于获取MySQL连接的当前用户名和主机名。
使用:
select user();
md5 函数:
作用:
md5函数用于对一个字符串进行md5摘要,摘要后得到一个32字符串。
使用:
select md5('xinghewangli');
database 函数:
作用:
database函数用于显示当前正在使用的数据库。
使用:
select database();
password 函数:
作用:
password函数用于对用户数据进行加密。
使用:
select password('Cjl12345@');
ifnull
函数:
作用:
ifnull函数接受两个参数,如果第一个参数不为null,则返回第一个参数,否则返回第二个参数。
使用:
select ifnull('a','b');
三、结束语
今天内容就到这里啦,时间过得很快,大家沉下心来好好学习,会有一定的收获的,大家多多坚持,嘻嘻,成功路上注定孤独,因为坚持的人不多。那请大家举起自己的小手给博主一键三连,有你们的支持是我最大的动力💞💞💞,回见。