我的编程空间,编程开发者的网络收藏夹
学习永远不晚

[Mysql] TIMESTAMPDIFF函数

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

[Mysql] TIMESTAMPDIFF函数

TIMESTAMPDIFF函数用于计算两个日期的时间差

语法结构

TIMESTAMPDIFF(unit,datetime_expr1,datetime_expr2)

参数说明 

unit: 日期比较返回的时间差单位,常用可选值如下:

SECOND:秒

MINUTE:分钟

HOUR:小时

DAY:天

WEEK:星期

MONTH:月

QUARTER:季度

YEAR:年

datetime_expr1: 要比较的日期1

datetime_expr2: 要比较的日期2

TIMESTAMPDIFF函数返回datetime_expr2 - datetime_expr1的结果,其中datetime_expr1和datetime_expr2可以是DATEDATETIME类型值

示例 

-- 相差:25秒SELECT TIMESTAMPDIFF(SECOND,'2022-04-23 14:57:00','2022-04-23 14:57:25');-- 相差:5分钟SELECT TIMESTAMPDIFF(MINUTE,'2022-04-23 15:00:00','2022-04-23 15:05:00');-- 相差:5小时SELECT TIMESTAMPDIFF(HOUR,'2022-04-23 11:20:00', '2022-04-23 16:20:00');-- 相差:2天SELECT TIMESTAMPDIFF(DAY,'2022-04-23 11:20:00', '2022-04-25 11:20:00');-- 相差:1星期SELECT TIMESTAMPDIFF(WEEK,'2022-04-23 11:20:00', '2022-04-30 11:20:00');-- 相差:1月SELECT TIMESTAMPDIFF(MONTH,'2022-04-23 11:20:00', '2022-05-30 11:20:00');-- 相差:1季度SELECT TIMESTAMPDIFF(QUARTER,'2022-04-23 11:20:00', '2022-07-23 11:20:00');-- 相差:1年SELECT TIMESTAMPDIFF(YEAR,'2022-04-23 11:20:00', '2023-04-23 11:20:00');

TIMESTAMPDIFF函数允许其搭配使用的参数datetime_expr1和datetime_expr2具有混合类型

案例

datetime_expr1是DATE类型值,datetime_expr2是DATETIME类型值,TIMESTAMPDIFF函数会将datetime_expr1自动转换成DATETIME类型值(即在日期后面加上时间“00:00:00”

-- 12SELECT TIMESTAMPDIFF(HOUR,'2022-04-27','2022-04-27 12:00:00');-- 12SELECT TIMESTAMPDIFF(HOUR,'2022-04-27 00:00:00','2022-04-27 12:00:00');

上述两行代码等价,返回的都是相同的结果

TIMESTAMPDIFF函数可以结合日期函数进行搭配使用

-- 可以结合日期函数进行搭配使用SELECT TIMESTAMPDIFF(SECOND,'2022-04-23', CURRENT_DATE());SELECT TIMESTAMPDIFF(SECOND,'2022-04-23 15:15:00',NOW());SELECT TIMESTAMPDIFF(SECOND,'2022-04-23 15:15:00',CURRENT_TIMESTAMP());-- 上述日期函数补充说明-- CURRENT_DATE()用于返回当前时间-- 示例结果:2022-04-27SELECT CURRENT_DATE();-- NOW()用于返回当前日期和时间-- 示例结果:2022-04-27 11:27:28SELECT NOW();-- CURRENT_TIMESTAMP()用于返回当前日期和时间-- 示例结果:2022-04-27 11:30:25SELECT CURRENT_TIMESTAMP();

练习案例

导入数据

DROP TABLE IF EXISTS Student;CREATE TABLE Student (SId VARCHAR (10),Sname VARCHAR (10),Sage datetime,Ssex VARCHAR (10))ENGINE = InnoDB DEFAULT CHARSET = utf8;INSERT INTO Student(SId,Sname,Sage,Ssex)VALUES('01' , '赵雷' , '1990-01-01' , '男'),('02' , '钱电' , '1990-12-21' , '男'),('03' , '孙风' , '1990-05-20' , '男'),('04' , '李云' , '1990-08-06' , '男'),('05' , '周梅' , '1991-12-01' , '女'),('06' , '吴兰' , '1992-03-01' , '女'),('07' , '郑竹' , '1989-07-01' , '女'),('08' , '张三' , '2017-12-20' , '女'),('09' , '李四' , '2017-12-25' , '女'),('11' , '李四' , '2017-12-30' , '女'),('12' , '孙七' , '2018-01-01' , '女');

Student表 

问题:按照出生日期来算学生年龄,其中当前月日<出生年月的月日,则年龄减一

解题思路

使用NOW()、TIMESTAMPDIFF()函数计算年龄

SELECT *, TIMESTAMPDIFF(YEAR,Sage,NOW())AS ageFROM Student;

结果展示:

来源地址:https://blog.csdn.net/Hudas/article/details/124351790

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

[Mysql] TIMESTAMPDIFF函数

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

mysql中TIMESTAMPDIFF函数怎么用

小编给大家分享一下mysql中TIMESTAMPDIFF函数怎么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!TIMESTAMPDIFFTIMERSTAMPDIFF语法:TIMERSTAMPDIFF(interval,d
2023-06-04

Mysql TIMESTAMPDIFF函数怎么使用

今天小编给大家分享一下Mysql TIMESTAMPDIFF函数怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。TIM
2023-07-05

mysql的TIMESTAMPDIFF()函数怎么使用

TIMESTAMPDIFF函数用于计算两个日期或时间之间的差值,并以指定的单位返回结果。它的语法如下:TIMESTAMPDIFF(unit, datetime_expr1, datetime_expr2)其中,unit表示要返回的差值的单位
2023-09-12

sql timestampdiff函数怎么使用

SQL TIMESTAMPDIFF函数用于计算两个日期或时间之间的差值,并以指定的时间单位返回结果。其语法如下:TIMESTAMPDIFF(unit, datetime_expr1, datetime_expr2)其中,unit是要返回的
sql timestampdiff函数怎么使用
2024-04-09

MYSQL中datediff、timestampdiff函数的使用(计算时

datediff函数计算两个日期之间的天数差异。timestampdiff函数计算两个日期之间的时间差异,可以选择不同的时间单位(如天、小时、分钟等)来进行计算。使用datediff函数示例:SELECT DATEDIFF('2021-
MYSQL中datediff、timestampdiff函数的使用(计算时
2024-04-09

sql timestampdiff函数有什么用

TIMESTAMPDIFF函数用于计算两个日期或时间的差值。它可以计算两个日期、时间或日期时间之间的差值,并以指定的单位返回结果,如年、月、日、小时、分钟等。这个函数在SQL中非常有用,可以帮助用户计算日期和时间之间的差异,从而进行更复杂的
sql timestampdiff函数有什么用
2024-04-09

sql timestampdiff函数的用途有哪些

计算两个日期之间的差值,可以是年、月、日、小时、分钟、秒等。计算两个时间戳之间的差值,可以是秒、毫秒等。可以用于业务逻辑中的时间计算,比如计算用户注册时间距今有多久。可以用于数据分析中的时间分析,比如计算用户最近一次购买时间距离上一次
sql timestampdiff函数的用途有哪些
2024-04-09

mysql中TIMESTAMPDIFF怎么使用

在MySQL中,TIMESTAMPDIFF函数用于计算两个日期或时间之间的差值,可以用于计算年、月、日、小时、分钟或秒之间的差值。TIMESTAMPDIFF函数的语法如下:TIMESTAMPDIFF(unit, start_datetime
2023-08-09

SQL中日期搜索 datediff()、timestampdiff()和data_format()函数使用

一、三种日期搜索 对mysql中日期范围搜索的大致有三种方式: 1、between and语句;2、datediff函数;3、timestampdiff函数; 下面就具体说明下这三种方式: 第一种: between and语句 select * from da
2018-11-09
2024-04-02
2024-04-02

MySQL函数1(单行函数)

单行函数函数的理解分类数值函数基本函数PI()无参数CETL CETLING()天花板函数(取比自己大的相邻的数)FLOOR()地板函数(取比自己小的相邻的数)RAND()无参数:随机;RAND(参数):一个固定的随机数单行函数可以嵌套角度与弧度的互换函数三
MySQL函数1(单行函数)
2018-03-23

MySQL用TIMESTAMPDIFF计算两个日期的月份差问题

在MySQL中,可以使用TIMESTAMPDIFF函数来计算两个日期之间的月份差。语法如下:```TIMESTAMPDIFF(unit, start_date, end_date)```其中,unit表示时间单位,可以是YEAR、MONTH
2023-09-21

编程热搜

目录