MariaDB 函数

MariaDB DATEDIFF() 函数返回两个日期/日期时间值之间的差异。返回值以天为单位表示,date1 和 date2 的时间部分将被忽略。

语法

DATEDIFF(date1, date2)

参数

date1 必填。 指定第一个日期或日期时间值来计算差异(date1 - date2)。
date2 必填。 指定第二个日期或日期时间值来计算差值(date1 - date2)。

返回值

返回以天为单位表示的两个日期/日期时间值之间的差异。

示例 1:

下面的示例显示了DATEDIFF()<的用法/i> 函数。

SELECT DATEDIFF('2019-10-25', '2019-10-15');
Result: 10

SELECT DATEDIFF('2019-10-25 12:40:45', '2019-10-15 10:20:25');
Result: 10

SELECT DATEDIFF('2019-10-25 12:40:45.001234', '2019-10-15 10:20:25.001000');
Result: 10

SELECT DATEDIFF('2019-10-15', '2019-10-25');
Result: -10

SELECT DATEDIFF('2019-10-25 12:40:45', '2019-10-15');
Result: 10

示例 2:

考虑一个名为 Orders 的数据库表,其中包含以下记录:

OrderQuantityPriceOrderDatePaymentDate
1001.582017-08-182017-08-20
1201.612018-03-232018-03-28
1251.782018-09-122018-09-22
501.802019-01-162019-01-17
2001.722020-02-062020-02-08

要计算结算交易所需的天数,可以使用以下查询:

SELECT *, DATEDIFF(PaymentDate, OrderDate) AS SettlementDays
FROM Orders;

这将产生类似于以下内容的结果:

OrderQuantityPriceOrderDatePaymentDateSettlementDays
1001.582017-08-182017-08-202
1201.612018-03-232018-03-285
1251.782018-09-122018-09-2210
501.802019-01-162019-01-171
2001.722020-02-062020-02-082