自学内容网 自学内容网

【MySQL】内置函数

> 作者:დ旧言~
> 座右铭:松树千年终是朽,槿花一日自为荣。

> 目标:了解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');

三、结束语 

       今天内容就到这里啦,时间过得很快,大家沉下心来好好学习,会有一定的收获的,大家多多坚持,嘻嘻,成功路上注定孤独,因为坚持的人不多。那请大家举起自己的小手给博主一键三连,有你们的支持是我最大的动力💞💞💞,回见。

​​​​ 


原文地址:https://blog.csdn.net/AAlykk/article/details/142745941

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!