一、首先介绍一种常用的日期差,在MySQL中只能默认只能计算天数差:

DATEDIFF(结束时间,开始时间)

SELECT DATEDIFF('2020-06-13','2020-06-12') AS DiffDate

下面这个加了个日期格式化

SELECT DATEDIFF('2020-06-13',DATE_FORMAT(NOW(),'%Y-%m-%d')) AS DiffDate

二、这种是比较少用但是查询功能多的MySQL自带的日期函数,可以计算两个日期相差的年,季,月,周,日,时,分,秒、当前日期增加或者减少一天、一周。

TIMESTAMPDIFF(类型,时间1,时间2)

结算的结果是:时间2-时间1

相差的年:

SELECT TIMESTAMPDIFF(YEAR,'2019-06-12 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s')) AS StampdiffTime

相差的天:

SELECT TIMESTAMPDIFF(DAY,'2019-06-12 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s')) AS StampdiffTime

这块就举两个例子,其他的按照下面修改类型就可以。

年        YEAR
季度    QUARTER
月        MONTH
星期    WEEK
天        DAY
小时    HOUR
分钟    MINUTE
秒        SECOND
毫秒    FRAC_SECOND

MySQL 自带的 日期 函数TIMESTAMPDIFF 计算 两个 日期 相差 的秒数、分钟数、小时数、天数、周数、季度数、月数、年数,当前 日期 增加或者减少一天、一周等等。 SELECT TIMESTAMPDIFF(类型,开始时间,结束时间) 相差 的秒数: SELECT TIMESTAMPDIFF(SECOND,'1993-03-23 00:00:00',DATE_FORMAT(NO...
MySql 计算 两个 日期 时间的 函数: 第一种:TIMESTAMPDIFF函数,需要传入三个参数,第一个是比较的类型,可以比较FRAC_SECOND、SECOND、 MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUARTER或 YEAR几种类型,第二个和第三个参数是待比较的 两个 时间,比较是后一个时间减前一个时间,具体用法如下: SELECT TIMESTAMPDIFF(D
格式: (p1,p2),返回周期P1和P2之间的月数。 P1和P2的格式应为YYMM或YYYYMM。 请注意,期间参数P1和P2不是 日期 值。 如果把小月份放到前面,那么结果会为负数 计算 两个 日期 相隔的天数 第一种方法 第二种方法 日期 转字符串 ZoneDateTime转换为字符串 MYSQL 的TIMESTAMPDIFF方法 MySQL 自带的 日期 函数 计算 两个 日期 相差 的秒数、分钟数、小时数、天数、周数、季度数、月数、年数,当前 日期 增加或者减少一天、一周等等。 相差 的秒数 例如是否 相差 大于等于15秒
mysql 当中,怎么 计算 两个 日期 的“年 ”, 了多少年? TimeStampDiff(间隔类型,前一个 日期 ,后一个 日期 ) 例如距离现在 了多少年:TimeStampDiff(year, 前一个 日期 , now()) 间隔类型有:second秒,minute分,hour时,day天,week周,month月,quarter季度,year年。 例题1:给任职 日期 超过30年的员工加薪10%。 思路:update emp set sal=sal*1.1 where 任职 日期 > 30年。 update em
-- 当月天数,当天是2022年1月6日,则返回 31 select day(last_day(curdate())); -- 当前 日期 时间,2022-01-06 14:47:32 select now(); -- 上月今天 日期 ,当天是2022年1月6日,则返回 2021-12-06 selec. 函数:TIMESTAMPDIFF(), 格式:SELECT TIMESTAMPDIFF(类型,开始时间,结束时间) 类型参数:秒-second、分-minute、时-hour、天-day、周-week、月-month、季- quarter、年-year 2、 MySQL 指定 日期 增加减少指定天数: 格式:DATE_SUB(指定 日期 ,INTERVAL,增加或减少,类型) 类型参数:天-day,周-week,月-month 增加负值,减少正值 示例:date_sub(‘2020-
可以使用 MySQL 内置的函数DATEDIFF和PERIOD_DIFF来 计算 两个 日期 之间 相差 的月份。 比如,假设有一个表orders,其中有 两个 字段order_date和delivery_date,表示订单的下单 日期 和交付 日期 。以下是 计算 两个 日期 之间 相差 的月份数的示例SQL语句: SELECT PERIOD_DIFF(EXTRACT(YEAR_MONTH FROM delivery_date), EXTRACT(YEAR_MONTH FROM order_date)) AS months_diff FROM orders; 该语句中,首先使用EXTRACT函数从订单 日期 和交付 日期 中提取出年月部分,并使用PERIOD_DIFF函数 计算 两个 年月之间 相差 的月份数。 如果想要得到四舍五入的月份数,可以使用ROUND函数。比如: SELECT ROUND(PERIOD_DIFF(EXTRACT(YEAR_MONTH FROM delivery_date), EXTRACT(YEAR_MONTH FROM order_date))) AS months_diff FROM orders; 这样就可以得到整数的月份数了。