文章目录(Table of Contents)
简介
之前我们介绍了关于MySQL的基础的命令, Mysql基础知识02-基础SQL语句, 这里包含了MySQL的基础语句, 这一篇介绍一下关于MySQL的常用的函数. 会包含一些常见的字符串的函数和时间的函数.
关于时间的函数
关于时间的函数的详细文档, 可以查看下面的链接, 12.6 Date and Time Functions
下面也是记录几个我自己用到的关于时间的函数.
weekofyear-查看第几个自然周
例如查看2020/04/02是这一年的第几个自然周.
- select weekofyear('2020-04-02');

DAYOFWEEK-查看星期
- select DAYOFWEEK('2020/04/02');
显示的结果是5, 但是这个不是表示周五.

这里的顺序是1
= Sunday, 2
= Monday, …, 7
= Saturday. 所以5就是周四.
计算日期日期增加与减少-date_add
我们还可以对日期进行加减, 例如我们要计算2020/1/1号前7天和后七天的日期.
首先是日期往前算就是负数, 如下所示, 计算前7天的日期.
- select date_add('2020-01-01', INTERVAL -7 DAY);

同样的道理, 我们使用正数就是计算后7天的日期.
- select date_add('2020-01-01', INTERVAL 7 DAY);

对数据表中数据使用-进阶
在实际使用中, 我们通常会使用下面的方式来进行日期数据的修改.
- select a.daTe, date_add(a.daTe, INTERVAL 7 DAY)
- from(
- select concat('2020','01','07') as daTe
- ) as a;
最终的结果如下所示.

日期格式转换-Date_format
有的时候, 我们希望将日期保存为指定的格式, 这个时候就需要使用Date_format来完成.
- select DATE_FORMAT('20200402', '%Y-%m-%d');
最终的结果如下所示:

当然, 对于输入的日期的格式, 其他格式也是可以识别的.

关于字符串的函数
关于字符串的函数的详细文档, 可以查看下面的链接, 12.7 String Functions and Operators
下面也是记录几个我自己用到的关于字符串的函数.
连接字符串-concat
这个可以将几个字符串进行连接.
- select concat('2020','04','02') as daTe;

在这里, 我们可以结合之前的
使用指定符号连接字符串-contact_ws
上面的方式会直接将所有的string全部连接到一起, 但有的时候我们希望可以自己指定连接符号, 这个时候就需要使用contact_ws来完成操作.
- select concat_ws('-', '2020', '01', '07');
最终的结果如下所示.

一些更复杂的操作, 我们可以可以两个连在一起进行使用.
- select concat_ws(':', 'Date', a.daTe)
- from(
- select concat('2020','01','07') as daTe
- ) as a;

计算字符串长度-length
- select length('2020-01-07');
上面的字符串长度是10.

- 微信公众号
- 关注微信公众号
-
- QQ群
- 我们的QQ群号
-
评论