Hier sind einige Optionen zum Subtrahieren einer oder mehrerer Sekunden von einem datetime-Ausdruck in MariaDB.
Die SUBTIME() Funktion
Die SUBTIME() subtrahiert eine bestimmte Zeitspanne von einem time- oder datetime-Wert.
Beispiel:
SELECT SUBTIME('2021-05-01 10:00:00', '00:00:30'); Ergebnis:
+--------------------------------------------------+| UNTERZEIT('2021-05-01 10:00:00', '00:00:30') |+-------------------- -------------------+| 01.05.2021 09:59:30 |+-------------------------------------------------- ------+ Sie können auch die anderen Zeiteinheiten wie Stunden, Minuten usw. ändern.
Der DATE_SUB() Funktion
Das DATE_SUB() Mit der Funktion können Sie eine bestimmte Anzahl von Datums-/Zeiteinheiten von einem Datums- oder Datumszeitausdruck subtrahieren. Daher können wir diese Funktion verwenden, um den datetime-Wert abzüglich einer bestimmten Anzahl von Sekunden zurückzugeben.
Beispiel:
SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL 30 SECOND); Ergebnis:
Beachten Sie, dass die SECOND Schlüsselwort bleibt nicht im Plural, unabhängig davon, ob Sie eine Sekunde oder mehr subtrahieren.
Sie können auch zusammengesetzte Datums- und Zeiteinheiten verwenden. Beispielsweise könnten Sie Minuten und Sekunden auf einmal erledigen.
Beispiel:
SELECT DATE_SUB('2021-05-01 10:00:00', INTERVAL '15:30' MINUTE_SECOND); Ergebnis:
Gerade das Datum übergeben
Folgendes passiert, wenn wir nur einen Datumswert angeben:
SELECT DATE_SUB('2021-05-01', INTERVAL 30 SECOND); Ergebnis:
+--------------------------------------------------+| DATE_SUB('2021-05-01', INTERVALL 30 SEKUNDEN) |+---------------------------------------------- ----------+| 2021-04-30 23:59:30 |+------------------------------------- ------+
Es geht davon aus, dass die Zeit um 00:00:00 Uhr beginnt, also die SECOND davon wird der Betrag abgezogen.
Der Subtraktionsoperator (- )
Eine andere Möglichkeit, eine oder mehrere Sekunden von einem datetime-Wert zu subtrahieren, ist die Verwendung des Subtraktionsoperators (- ), auch Minusoperator genannt.
Beispiel:
SELECT '2021-05-01 10:00:00' - INTERVAL 30 SECOND; Ergebnis:
+--------------------------------------------------+| '2021-05-01 10:00:00' - INTERVALL 30 SEKUNDEN |+------------------------------- -------------+| 01.05.2021 09:59:30 |+-------------------------------------------------- ------+
Der Additionsoperator (+ )
Alternativ können Sie auch den Additionsoperator (+ ) zusammen mit einem negativen Betrag.
Beispiel:
SELECT '2021-05-01 10:00:00' + INTERVAL -30 SECOND; Ergebnis:
+---------------------------------------------+ | '2021-05-01 10:00:00' + INTERVALL -30 SEKUNDEN |+------------------------------- --------------+| 01.05.2021 09:59:30 |+-------------------------------------------------- -------+
Andere Möglichkeiten zum Subtrahieren von Sekunden
Hier sind einige andere Ansätze, die Sie verwenden könnten, um eine oder mehrere Sekunden von einem datetime-Wert abzuziehen:
- Die
SUBTIME()Funktion. - Der
ADDTIME()Funktion (bei Angabe eines negativen Betrags wird dieser Betrag vom datetime-Wert subtrahiert). - Das
SUBDATE()Funktion (dies ist ein Synonym fürDATE_SUB()bei Verwendung mit derselben Syntax). - Der
DATE_ADD()Funktion (bei Angabe eines negativen Betrags wird dieser Betrag vom datetime-Wert subtrahiert). - Das
ADDDATE()Funktion (bei Angabe eines negativen Betrags wird dieser Betrag vom datetime-Wert subtrahiert).