在MariaDB中为日期添加天数的8种方法

发布于

MariaDB 提供了几种将一定天数添加到给定日期的方法。例如,您可能希望向日期添加 10 天、30 天,甚至仅添加 1 天。幸运的是,MariaDB 使这变得容易。

以下是在 MariaDB 中为给定日期添加天数的 8 种方法。

函数ADDDATE()

让我们从函数开始。ADDDATE()

此函数有两种不同的语法。第一种语法提供了一种向日期添加一定天数的简洁方法。

例:

SELECT ADDDATE('2021-05-01', 10);

结果:

+—————————+ | ADDDATE(‘2021-05-01’, 10) | +—————————+ | 2021-05-11 | +—————————+

使用此语法,我们提供了两个参数。第一个参数是日期,第二个参数是要添加到该日期的天数。

函数 – 语法 2ADDDATE()

该函数还具有更详细的语法。此语法使我们能够更明确地将日期添加到日期。ADDDATE()

例:

SELECT ADDDATE('2021-05-01', INTERVAL 10 DAY);

结果:

+—————————————-+ | ADDDATE(‘2021-05-01’, INTERVAL 10 DAY) | +—————————————-+ | 2021-05-11 | +—————————————-+

在这个示例中,我们使用关键字,后跟天数,然后是关键字。INTERVAL``DAY

关键字用于将时间间隔加减为 a,或值。我们可以在日期上使用它,以及适用的日期/时间单位,以将一定天数添加到我们的日期中。在我们的例子中,日期/时间单位是,但它可以很容易地,,,等等,以及许多复合单位。INTERVAL``DATETIME``DATE``TIME``DAY``MONTH``YEAR``HOUR

函数DATE_ADD()

该函数的工作方式与使用详细语法时相同。实际上,当使用详细语法时,是一个同义词。DATE_ADD()ADDDATE()``ADDDATE()``DATE_ADD()

例:

SELECT DATE_ADD('2021-05-01', INTERVAL 10 DAY);

结果:

+—————————————–+ | DATE_ADD(‘2021-05-01’, INTERVAL 10 DAY) | +—————————————–+ | 2021-05-11 | +—————————————–+

函数 – 语法 1SUBDATE()

该函数允许您减_去_日期的金额。但是,如果您提供负值进行减去,则它最终会_添加到_日期中。SUBDATE()

例:

SELECT SUBDATE('2021-05-01', -10);

结果:

+—————————-+ | SUBDATE(‘2021-05-01’, -10) | +—————————-+ | 2021-05-11 | +—————————-+

函数 – 语法 2SUBDATE()

该函数还具有更详细的语法(类似于函数)。SUBDATE()``ADDDATE()

例:

SELECT SUBDATE('2021-05-01', INTERVAL -10 DAY);

结果:

+—————————————–+ | SUBDATE(‘2021-05-01’, INTERVAL -10 DAY) | +—————————————–+ | 2021-05-11 | +—————————————–+

函数DATE_SUB()

下面是一个使用 thefunction 的示例:DATE_SUB()

SELECT DATE_SUB('2021-05-01', INTERVAL -10 DAY);

结果:

+——————————————+ | DATE_SUB(‘2021-05-01’, INTERVAL -10 DAY) | +——————————————+ | 2021-05-11 | +——————————————+

操作员+

另一种选择是使用运算符。+

The运算符用于执行加法,我们可以在日期上使用它,以及适用的日期/时间单位,以将一定天数添加到我们的日期中。+

例:

SELECT '2021-05-01' + INTERVAL 10 DAY;

结果:

+——————————–+ | ‘2021-05-01’ + INTERVAL 10 DAY | +——————————–+ | 2021-05-11 | +——————————–+

操作员-

运算符可用于从日期中减去金额。但是,如果减去负数,则会在日期中添加一个正数:-

SELECT '2021-05-01' - INTERVAL -10 DAY;

结果:

+———————————+ | ‘2021-05-01’ - INTERVAL -10 DAY | +———————————+ | 2021-05-11 | +———————————+

奖励:功能ADDTIME()

我说这篇文章包含 8 种为约会添加天数的方法,但这里有几个奖励功能!也许我应该将这篇文章称为“向日期时间值添加天数的 10 种方法”。

无论如何,您可以使用该函数向日期时间表达式添加天数。ADDTIME()

例:

SELECT ADDTIME('2021-05-01 10:30:45', '1 0:0:0');

结果:

+——————————————-+ | ADDTIME(‘2021-05-01 10:30:45’, ‘1 0:0:0’) | +——————————————-+ | 2021-05-02 10:30:45 | +——————————————-+

您还可以更改其他时间单位,例如小时、分钟、秒等。

如果您愿意,也可以切换它并使用负值:SUBTIME()

SELECT SUBTIME('2021-05-01 10:30:45', '-1 0:0:0');

结果:

+——————————————–+ | SUBTIME(‘2021-05-01 10:30:45’, ‘-1 0:0:0’) | +——————————————–+ | 2021-05-02 10:30:45 | +——————————————–+

其他日期和时间单位

上面的例子在日期中添加了天数,但我们可以使用相同的技术来添加任何日期/时间单位。我们使用日期/时间单位,但如前所述,它可以很容易,,,等等,以及任何复合单位。DAY``MONTH``YEAR``HOUR

请参阅MariaDB 日期和时间单位,了解可与上述函数和运算符一起使用的日期/时间单位的完整列表。