MariaDB
 sql >> Datenbank >  >> RDS >> MariaDB

8 Möglichkeiten, Sekunden zu einem Datetime-Wert in MariaDB hinzuzufügen

Wenn Sie einem datetime-Wert in MariaDB eine oder mehrere Sekunden hinzufügen müssen, sollten Sie die folgenden 8 Optionen in Betracht ziehen.

Der DATE_ADD() Funktion

Das DATE_ADD() Mit der Funktion können Sie einem Datums- oder Datumszeitausdruck einen Betrag hinzufügen. Dazu gehört das Hinzufügen von Zeitteilen wie Stunden, Minuten, Sekunden usw.

Beispiel:

SELECT DATE_ADD('2021-05-01 10:00:00', INTERVAL 35 SECOND); 

Ergebnis:

+---------------------------------------------- -------+| DATE_ADD('2021-05-01 10:00:00', INTERVALL 35 SEKUNDEN) |+------------------------------------- ------------------------+| 01.05.2021 10:00:35 |+-------------------------------------------------- ---------------+

In diesem Fall habe ich dem datetime-Ausdruck 35 Sekunden hinzugefügt. Beachten Sie, dass die SECOND Das Schlüsselwort bleibt nicht im Plural, unabhängig davon, ob ich eine Sekunde oder mehr hinzufüge.

Folgendes passiert, wenn ich nur das Datum angebe:

SELECT DATE_ADD('2021-05-01', INTERVAL 35 SECOND); 

Ergebnis:

+--------------------------------------------------+| DATE_ADD('2021-05-01', INTERVALL 35 SEKUNDEN) |+---------------------------------------------- ----------+| 2021-05-01 00:00:35 |+--------------------------------------------------- ------+

Der Zeitteil wird an das Ergebnis angehängt, und es wird angenommen, dass die Anfangszeit 00:00:00 war .

Beim Hinzufügen von 60 Sekunden können wir alternativ die MINUTE verwenden Schlüsselwort, wenn wir es vorziehen:

SELECT DATE_ADD('2021-05-01 10:00:00', INTERVAL 1 MINUTE); 

Ergebnis:

+---------------------------------------------- ------+| DATE_ADD('2021-05-01 10:00:00', INTERVALL 1 MINUTE) |+------------------------------------- -----------------------+| 2021-05-01 10:01:00 |+--------------------------------------------------- --------------+

Diese Technik funktioniert offensichtlich mit 120 Sekunden, 180 und so weiter. Verwenden Sie einfach die entsprechende Anzahl an Minuten.

Sie können auch eine zusammengesetzte Datums-/Uhrzeiteinheit verwenden, um mehrere Einheiten hinzuzufügen. Wenn Sie beispielsweise 1 Minute und 30 Sekunden hinzufügen möchten, können Sie Folgendes tun:

SELECT 
DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:30' MINUTE_SECOND); 

Ergebnis:

+---------------------------------------------- ------------------+| DATE_ADD('2021-05-01 10:00:00', INTERVAL '1:30' MINUTE_SECOND) |+-------------------- ---------------------------------------+| 2021-05-01 10:01:30 |+--------------------------------------------------- --------------------------+

Eine vollständige Liste der Datums-/Zeiteinheiten finden Sie unter MariaDB Date and Time Units.

Das ADDDATE() Funktion

Eine andere Möglichkeit, einem datetime-Ausdruck Sekunden hinzuzufügen, ist die Verwendung von ADDDATE() Funktion. Diese Funktion hat zwei Syntaxen:

  1. Eine Syntax ermöglicht es Ihnen, eine Anzahl von Tagen zu einem Datum hinzuzufügen, was wir hier nicht tun (es sei denn, wir planen, Sekunden in Blöcken von 86.400 hinzuzufügen, was der Anzahl von Sekunden an einem Tag entspricht).
  2. Die übrige Syntax ist die gleiche wie bei DATE_ADD() Funktion oben. Bei Verwendung dieser Syntax ADDDATE() ist ein Synonym für DATE_ADD() .

Beispiel:

SELECT ADDDATE('2021-05-01 10:00:00', INTERVAL 35 SECOND); 

Ergebnis:

+---------------------------------------------- ------+| HINZUFÜGEN('2021-05-01 10:00:00', INTERVALL 35 SEKUNDEN) |+------------------------------------- -----------------------+| 01.05.2021 10:00:35 |+-------------------------------------------------- --------------+

Der DATE_SUB() Funktion

Das DATE_SUB() Funktion können Sie subtrahieren ein Betrag zu einem Datum/Datum/Uhrzeit-Ausdruck. Wenn Sie jedoch einen negativen Wert zum Subtrahieren angeben, wird dieser letztendlich hinzugefügt zum Datum/Uhrzeit.

Beispiel:

SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL -35 SECOND); 

Ergebnis:

+---------------------------------------------- --------+| DATE_SUB('2021-05-01 10:00:00', INTERVALL -35 SEKUNDEN) |+------------------------------------ --------------------------+| 01.05.2021 10:00:35 |+-------------------------------------------------- ----------------+

Das SUBDATE() Funktion

Das SUBDATE() Funktion ist ein Synonym für DATE_SUB() bei Verwendung der folgenden Syntax.

Beispiel:

SELECT SUBDATE('2021-05-01 10:00:00', INTERVAL -35 SECOND); 

Ergebnis:

+---------------------------------------------- -------+| SUBDATE('2021-05-01 10:00:00', INTERVALL -35 SEKUNDEN) |+----------------------------------------- -------------------------+| 01.05.2021 10:00:35 |+-------------------------------------------------- ---------------+

Der + Betreiber

Eine andere Möglichkeit ist die Verwendung von + Operator.

Das + -Operator wird verwendet, um eine Addition durchzuführen, und wir können ihn zusammen mit der entsprechenden Datums-/Uhrzeiteinheit für Datumsangaben verwenden, um unserem datetime-Ausdruck eine bestimmte Anzahl von Sekunden hinzuzufügen.

Beispiel:

SELECT '2021-05-01 10:00:00' + INTERVAL 35 SECOND; 

Ergebnis:

+--------------------------------------------------+| '2021-05-01 10:00:00' + INTERVALL 35 SEKUNDEN |+--------------------------------------------- -------------+| 01.05.2021 10:00:35 |+-------------------------------------------------- ------+

Der - Betreiber

Der - Operator kann verwendet werden, um einen Betrag von einem Datum abzuziehen. Aber wenn es verwendet wird, um eine negative Zahl zu subtrahieren, dann ist das Ergebnis ein positiver Betrag, der zum datetime-Ausdruck hinzugefügt wird:

SELECT '2021-05-01 10:00:00' - INTERVAL -35 SECOND; 

Ergebnis:

+---------------------------------------------+ | '2021-05-01 10:00:00' - INTERVALL -35 SEKUNDEN |+------------------------------- --------------+| 01.05.2021 10:00:35 |+-------------------------------------------------- -------+

Die ADDTIME() Funktion

Sie können die ADDTIME() verwenden Funktion zum Hinzufügen einer Anzahl von Sekunden zu einem datetime-Ausdruck.

Beispiel:

SELECT ADDTIME('2021-05-01 10:00:00', '00:00:30'); 

Ergebnis:

+--------------------------------------------------+| ADDTIME('2021-05-01 10:00:00', '00:00:30') |+-------------------- -------------------+| 2021-05-01 10:00:30 |+--------------------------------------------------- ------+

Ein Vorteil dieser Funktion ist, dass Sie auch die anderen Zeiteinheiten wie Stunden, Minuten usw. ändern können.

Die SUBTIME() Funktion

Sie können es alternativ umschalten und SUBTIME() verwenden mit einem negativen Wert, wenn Sie dies wünschen:

SELECT SUBTIME('2021-05-01 10:00:00', '-00:00:30'); 

Ergebnis:

+---------------------------------------------+ | SUBTIME('2021-05-01 10:00:00', '-00:00:30') |+------------------------ ---------------------+| 2021-05-01 10:00:30 |+--------------------------------------------------- -------+

Andere Datums- und Zeiteinheiten

Die obigen Beispiele fügen dem datetime-Wert eine Anzahl von Sekunden hinzu, aber wir können die gleichen Techniken verwenden, um eine beliebige Datums-/Zeiteinheit hinzuzufügen. Eine vollständige Liste der Datums-/Zeiteinheiten, die mit den oben genannten Funktionen und Operatoren verwendet werden können, finden Sie unter MariaDB-Datums- und Zeiteinheiten.