MySQL—函数—日期函数(基础)

一、引言

接下来讨论和学习关于函数的第三个方面------日期函数。

常见的MySQL当中的日期函数。

注意:

1、CURDATE():cur:current 当前的,返回的是当前日期。

2、CURTIME():当前时间。

3、NOW:当前的日期和时间。

4、YEAR(date) 、MONTH(date) 、DAY(date):年月日

5、DATE_ADD(date,INTERVAL expr type) :在指定日期的基础上来增加,可以是年、月或者是天。取决于单位:type 。

6、DATEDIFF(date1、date2):返回这两个日期相差的天数。

上面先简单介绍学习到这里。接下来去工具 DataGrip 一个一个试一下这个里面涉及到的日期时间的函数。

二、实操

(1)当前日期:CURDATE();
sql 复制代码
SELECT CURDATE();
(2)当前时间:CURTIME();
sql 复制代码
SELECT CURTIME();
(3)当前日期和时间:NOW();
sql 复制代码
SELECT NOW();
(4)YEAR(date); MONTH(date); DAY(date);
sql 复制代码
SELECT YEAR(CURDATE());

SELECT MONTH(NOW());

SELECT DAY(NOW());
(5)DATE_ADD(date, INTERVAL expr type);
sql 复制代码
SELECT DATE_ADD(NOW(),INTERVAL 70 DAY);
SELECT DATE_ADD(NOW(),INTERVAL 70 MONTH);
SELECT DATE_ADD(NOW(),INTERVAL 70 YEAR);

注意:

函数作用:返回在指定日期的基础上来增加一个时间间隔之后的时间值。

interval:间隔

expr:我们指定的一个时间

type:时间的单位

(6) DATEDIFF(date1,date2);

返回的是两个指定时间之间相差的天数。而且是第一个时间减去第二个时间: (date1) - (date2) 。

sql 复制代码
SELECT DATEDIFF('2024-6-1','2024-5-12');

三、案例

根据需求完成以下SQL编写。

1、查询所有员工的入职天数,并根据入职天数倒序排序。
sql 复制代码
SELECT name,DATEDIFF(CURDATE(),entrydate) AS entry_days FROM emp ORDER BY entry_days DESC;
相关推荐
SelectDB4 小时前
让变更流出 Doris:Apache Doris 5.0 基于增量计算的 CDC 技术解析
数据库
这个DBA有点耶4 小时前
MCP隔离层+行级语义审计+输出校验:AI访问数据库的安全边界拆解
数据库·人工智能·ai编程
这个DBA有点耶5 小时前
从反向扫描O(n)到正向扫描O(1):降序索引的物理机制与混合排序匹配规则
数据库
2501_933923256 小时前
解读Redis:单线程模型
数据库·redis·缓存
Tapdata7 小时前
被忽略的第三类上下文:Agent 进入真实业务后,还缺什么?
数据库·人工智能·架构
小科先生8 小时前
Java springboot调用数据库的基本流程
java·数据库·spring boot
星恒随风8 小时前
MySQL 从零入门(四):表的增删改查与基础查询详解
linux·服务器·数据库·笔记·mysql
Pniubi10 小时前
MySQL靠什么实现事务的?事务隔离级别有哪些?
java·数据库·mysql
数据库小学妹11 小时前
pgbouncer 事务池:prepared statement、临时表与会话状态
数据库·后端·postgresql
aiks_yuan11 小时前
MySQL 死锁怎么排查:看懂 INNODB STATUS 死锁日志,先查后插为什么必死锁(MySQL 8.2 实测)
mysql