zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

mysql timestampdiff>_MySQL TIMESTAMPDIFF()用法及代码示例

mysql代码 示例 用法 gt TIMESTAMPDIFF
2023-06-13 09:11:59 时间

大家好,又见面了,我是你们的朋友全栈君。

TIMESTAMPDIFF():

MySQL中的此函数用于从另一个函数中减去DateTime表达式后返回一个值。

用法:

TIMESTAMPDIFF(unit,expr1,expr2)

Parameters:

它将接受三个参数。

单位-

它表示结果的单位。可以是以下之一。

微秒,秒,分钟,小时,天,周,月,季度,年

expr1-

第一个日期或DateTime表达式。

expr2-

第二个日期或DateTime表达式。

返回值:

减去后返回DateTime表达式。

范例1:

获取两个指定的时间值之间的差异,其中以YYYY-MM-DD HH-MM-SS的格式指定时间。这里expr2大于expr1,因此返回值为正。

SELECT TIMESTAMPDIFF(SECOND, ‘2010-01-01 10:10:20’, ‘2010-01-01 10:45:59’) AS SECONDDIFFERENCE;

输出:

SECONDDIFFERENCE

2139

范例2:

获取两个指定的时间值之间的差异,其中以YYYY-MM-DD HH-MM-SS的格式指定时间。这里expr2小于expr1,因此返回值为负。

SELECT TIMESTAMPDIFF(SECOND, ‘2010-01-01 10:10:20’, ‘2010-01-01 09:45:59’) AS SECONDDIFFERENCE;

输出:

SECONDDIFFERENCE

-1461

范例3:

以YYYY-MM-DD的格式指定日期时,获取月份中两个指定日期值之间的差异。

SELECT TIMESTAMPDIFF(MONTH, ‘2019-08-01’, ‘2020-11-01’) AS MONTHDIFFERENCE;

输出:

MONTHDIFFERENCE

15

范例4:

使用TIMESTAMPDIFF函数计算员工的总工作经验。

创建一个Employee表-

CREATE TABLE Employee(

id INT AUTO_INCREMENT PRIMARY KEY,

Full_Name VARCHAR(50) NOT NULL,

Joining_Date DATE NOT NULL

);

将值插入表格-

INSERT INTO Employee(Full_Name , Joining_Date )

VALUES(‘Riya Jana’, ‘2000-01-01’),

(‘Sayan Ghosh’, ‘2005-09-26’),

(‘Rinki Sharma’, ‘2014-08-12’),

(‘Aniket Singh’, ‘2019-11-05’);

现在,我们将使用TIMESTAMPDIFF来计算该年每个员工的工作经验。

SELECT

id,

Full_Name,

Joining_Date ,

TIMESTAMPDIFF(YEAR, Joining_Date,’2020-11-26′) AS WorkExperience

FROM

Employee ;

输出:

ID

FULL_NAME

JOINING_DATE

WORKEXPERIENCE

1

里亚亚娜(Riya Jana)

2000-01-01

20

2

萨扬·高什(Sayan Ghosh)

2005-09-26

15

3

林基·夏尔马

2014-08-12

6

4

阿妮克特·辛格(Aniket Singh)

2019-11-05

1

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/135168.html原文链接:https://javaforall.cn