我相信大家在学习各种语言的时候或多或少听过我们函数或者方法这一类的名词,函数在计算机语言的使用中可以说是贯穿始终,那么大家有没有思考过到底函数是什么?函数的作用又是什么呢?我们为什么要使用函数?其实,简单理解的说,函数就是把我们需要经常使用的代码封装起来,使用的时候直接调用即可。大家可以想想这样的话是不是既提高了效率,又提高了可维护性,在SQL语言中我们也可以使用函数对检索出来的数据进行函数操作。使用这些函数,可以极大地提高我们对数据库的管理效率。
MySQL提供了丰富的内置函数,这些函数使得数据的维护与管理更加的方便,能够更好地提供数据的分析与统计功能,在一定程度上提高了开发人员进行数据分析与统计的效率,无论是在我们的日常工作还是学生党们参加大数据相关的比赛,都是必备的知识。
MySQL提供了大量的日期与时间函数,用于执行各种日期和时间的计算、转换和格式化操作。日期与时间函数广泛应用于各种数据库应用场景中,如任务管理系统(用于存储任务的开始和结束时间)、支付系统(用于存储付款时间)、订阅系统(用于存储订阅的开始和结束时间)等。此外,它们还常用于数据分析、报表生成和日志记录等领域。在我们的全国职业院校技能大赛中,我们离线数据模块也是需要经常使用各种日期与时间函数的,所以这部分的函数可以说是我们无论竞赛还是日常工作中,都是极其重要的一部分。由于MySQL在这一部分确实为大家提供了非常丰富的内置函数,所以我们分为几部分给大家介绍,本篇为时间与日期函数的第二部分。
(1)EXTRACT(type FROM date)
函数介绍:返回指定日期中特定部分,type指定返回的值
代码演示:
|--------------------|----------------|
| type取值 | 含义 |
| MICROSECONE | 返回毫秒数 |
| SECOND | 返回秒数 |
| MINUTE | 返回分钟数 |
| HOUR | 返回小时数 |
| DAY | 返回天数 |
| WEEK | 返回日起在一年中的第几个星期 |
| MONTH | 返回日期在一年中的第几个月 |
| QUARTER | 返回日期在一年中的第几个季度 |
| YEAR | 返回日期的年份 |
| SECOND_MICROSECOND | 返回秒和毫秒值 |
| MINUTE_MICROSECOND | 返回分钟和毫秒值 |
| MINUTE_SECOND | 返回分钟和秒值 |
| HOUR_MICROSECOND | 返回小时和毫秒值 |
| HOUR_SECOND | 返回小时和秒值 |
| HOUR_MINUTE | 返回小时和分钟值 |
| DAY_MICROSECOND | 返回天和毫秒值 |
| DAY_SECOND | 返回天和秒值 |
| DAY_MINUTE | 返回天和分钟值 |
| DAY_HOUR | 返回天和小时 |
| YEAR_MONYH | 返回年和月 |
[EXTRACT(type FROM date) 函数中type的取值与含义]
(2)TIME_TO_SEC(time)
函数介绍:将time转化为秒并返回结果值。转化的公式为:小时*3600+分钟*60+秒
代码演示:
(3)SEC_TO_TIME(seconds)
函数介绍:将seconds描述转化为包含小时、分钟和秒的时间
代码演示:
(4)DATE_ADD(datetime, INTERVAL expr type) | ADDDATE(date,INTERVAL expr type)
函数介绍:返回与给定日期时间相差INTERVAL时间段的日期时间
代码演示:
(5)DATE_SUB(date,INTERVAL expr type) | SUBDATE(date,INTERVAL expr type)
函数介绍:返回与date相差INTERVAL时间间隔的日期
代码演示:
|---------------|-------|
| 间隔类型 | 含义 |
| HOUR | 小时 |
| MINUTE | 分钟 |
| SECOND | 秒 |
| YEAR | 年 |
| MONTH | 月 |
| DAY | 日 |
| YEAR_MONTH | 年和月 |
| DAY_HOUR | 日和小时 |
| DAY_MINUTE | 日和分钟 |
| DAY_SECOND | 日和秒 |
| HOUR_MINUTE | 小时和分钟 |
| HOUR_SECOND | 小时和秒 |
| MINUTE_SECOND | 分钟和秒 |
[上述函数中type取值]
(6)ADDTIME(time1,time2)
函数介绍:返回time1加上time2的时间。当time2为一个数字时,代表的是 秒 ,可以为负数
代码演示:
(7)SUBTIME(time1,time2)
函数介绍:返回time1减去time2后的时间。当time2为一个数字时,代表的 是 秒 ,可以为负数
代码演示:
(8)DATEDIFF(date1,date2)
函数介绍:返回date1 - date2的日期间隔天数
代码演示:
(9)TIMEDIFF(time1, time2)
函数介绍:返回time1 - time2的时间间隔
代码演示:
(10)LAST_DAY(date)
函数介绍:返回date所在月份的最后一天的日期
代码演示:
由于咱们MySQL的时间与日期函数是非常丰富的,所以小编这里先给大家介绍一部分,余下的函数也有非常常用的,咱们会再专门出一篇文章为大家详细介绍,助力大家学习和工作!