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

4 Funktionen, die die Minuten aus einem Zeitwert in MariaDB zurückgeben

Nachfolgend finden Sie 4 Funktionen, mit denen Sie den Minutenanteil eines Zeitwerts in MariaDB zurückgeben können.

Die MINUTE() Funktion

Die MINUTE() Funktion gibt den Minutenteil einer gegebenen TIME zurück oder DATETIME Ausdruck. Es akzeptiert ein Argument, nämlich die Zeit, aus der Sie die Minuten extrahieren möchten.

Beispiel:

SELECT MINUTE('03:45:30');

Ergebnis:

+--------------------+
| MINUTE('03:45:30') |
+--------------------+
|                 45 |
+--------------------+

TIME Werte können im Bereich '-838:59:59.999999' liegen zu '838:59:59.999999' . Also, obwohl der Stundenteil viel höher als 23 sein kann , darf der Minutenteil nur im Bereich 0 liegen bis 59 .

TIME Werte können auch negativ sein. In solchen Fällen MINUTE() gibt einen positiven Wert zurück.

Hier ist ein negativer Zeitwert mit einem größeren Stundenteil:

SELECT MINUTE('-838:59:59');

Ergebnis:

+----------------------+
| MINUTE('-838:59:59') |
+----------------------+
|                   59 |
+----------------------+

Der Minutenteil wird wie erwartet extrahiert.

Der EXTRACT() Funktion

Der EXTRACT() Mit der Funktion können Sie eine bestimmte Einheit aus dem Datums-/Uhrzeitwert extrahieren. Daher können Sie es verwenden, um die Minuten (sowie andere Einheiten) aus dem Zeitwert zu extrahieren.

Beispiel:

SELECT EXTRACT(MINUTE FROM '10:47:01');

Ergebnis:

+---------------------------------+
| EXTRACT(MINUTE FROM '10:47:01') |
+---------------------------------+
|                              47 |
+---------------------------------+

Der TIME_FORMAT() Funktion

Das TIME_FORMAT() Mit der Funktion können Sie einen Zeitwert basierend auf einer Formatzeichenfolge formatieren. Der Formatstring gibt an, wie die Uhrzeit formatiert werden soll.

Sie können daher diese Funktion verwenden, um die Minuten (sowie Stunden und Sekunden) von der Uhrzeit zurückzugeben.

Mit %i Formatbezeichner gibt die Minuten mit zwei Ziffern zurück:

SELECT TIME_FORMAT('10:07:30', '%i');

Ergebnis:

+-------------------------------+
| TIME_FORMAT('10:07:30', '%i') |
+-------------------------------+
| 07                            |
+-------------------------------+

Das TIME_FORMAT() Die Funktion akzeptiert eine Teilmenge der Formatzeichenfolgen, die mit DATE_FORMAT() verwendet werden können Funktion. Siehe MariaDB-Formatzeichenfolgen für eine vollständige Liste von Formatzeichenfolgen/Bezeichnern, die mit DATE_FORMAT() verwendet werden können . Das TIME_FORMAT() -Funktion akzeptiert nur Formatbezeichner für Stunden, Minuten und Sekunden. Jeder andere Formatbezeichner führt zu null oder 0 zurückgegeben.

Das DATE_FORMAT() Funktion

Das DATE_FORMAT() Mit der Funktion können Sie einen Datums- oder Datumszeitwert basierend auf einer Formatzeichenfolge formatieren. Der Formatstring gibt an, wie das Datum/die Uhrzeit formatiert werden soll.

Wir können daher dieselben Formatbezeichner verwenden, die wir mit TIME_FORMAT() verwendet haben Funktion im vorherigen Beispiel. Jedoch DATE_FORMAT() akzeptiert keine TIME Wert, also müssen wir ein DATETIME übergeben Wert.

SELECT DATE_FORMAT('2023-01-01 10:07:30', '%i');

Ergebnis:

+------------------------------------------+
| DATE_FORMAT('2023-01-01 10:07:30', '%i') |
+------------------------------------------+
| 07                                       |
+------------------------------------------+

Vergeht nur eine TIME Wert funktioniert nicht mit dieser Funktion:

SELECT DATE_FORMAT('10:07:30', '%i') AS '%i';

Ergebnis:

+------+
| %i   |
+------+
| 00   |
+------+