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

Wie GET_FORMAT() in MariaDB funktioniert

In MariaDB GET_FORMAT() ist eine integrierte Datums- und Uhrzeitfunktion, die eine Formatzeichenfolge zurückgibt.

Diese Funktion kann nützlich sein, wenn Sie mit Funktionen arbeiten, die eine Formatzeichenfolge erfordern, wie z. B. DATE_FORMAT() und STR_TO_DATE() .

Syntax

Die Syntax lautet wie folgt:

GET_FORMAT({DATE|DATETIME|TIME}, {'EUR'|'USA'|'JIS'|'ISO'|'INTERNAL'}) 

Beispiel

Hier ist ein Beispiel:

SELECT GET_FORMAT(DATE, 'EUR'); 

Ergebnis:

+-------------------------+| GET_FORMAT(DATUM, 'EUR') |+-------------------------+| %d.%m.%Y |+--------------------+

Dies zeigt uns das zu verwendende Format, wenn mit Datumsangaben im EUR-Format gearbeitet wird.

Hier ist ein weiteres Beispiel. Dieses Mal geben wir den ISO-Format-String für datetime:

zurück
SELECT GET_FORMAT(DATETIME, 'ISO'); 

Ergebnis:

+-------------------------------------+| GET_FORMAT(DATETIME, 'ISO') |+--------------------------------------+| %Y-%m-%d %H:%i:%s |+--------------------------------------+ 

Mit DATE_FORMAT()

In diesem Beispiel verwende ich GET_FORMAT() als zweites Argument für DATE_FORMAT() Funktion. Dies ermöglicht es mir, das Datum zu formatieren, ohne mich an die tatsächlich zu verwendende Formatzeichenfolge erinnern zu müssen.

SELECT DATE_FORMAT('2030-08-25', GET_FORMAT(DATE,'USA')); 

Ergebnis:

+---------------------------------------------- -----+| DATE_FORMAT('2030-08-25', GET_FORMAT(DATUM,'USA')) |+------------------------------------ ----------------------+| 25.08.2030 |+--------------------------------------------- ------+

Mögliche Formatzeichenfolgen

Hier ist eine Tabelle der möglichen Formatzeichenfolgen:

Argumente Ergebnisformat
DATE, 'EUR' ‘%d.%m.%Y’
DATE, 'USA' ‘%m.%d.%Y’
DATE, 'JIS' ‘%Y-%m-%d’
DATE, 'ISO' ‘%Y-%m-%d’
DATE, 'INTERNAL' ‘%Y%m%d’
DATETIME, 'EUR' ‘%Y-%m-%d %H.%i.%s’
DATETIME, 'USA' ‘%Y-%m-%d %H.%i.%s’
DATETIME, 'JIS' ‘%Y-%m-%d %H:%i:%s’
DATETIME, 'ISO' ‘%Y-%m-%d %H:%i:%s’
DATETIME, 'INTERNAL' ‘%Y%m%d%H%i%s’
TIME, 'EUR' ‘%H.%i.%s’
TIME, 'USA' ‘%h:%i:%s %p’
TIME, 'JIS' ‘%H:%i:%s’
TIME, 'ISO' ‘%H:%i:%s’
TIME, 'INTERNAL' ‘%H%i%s’

Fehlendes Argument

Aufruf von GET_FORMAT() mit der falschen Anzahl von Argumenten oder ohne Übergabe von Argumenten führt zu einem Fehler:

SELECT GET_FORMAT(); 

Ergebnis:

ERROR 1064 (42000):Sie haben einen Fehler in Ihrer SQL-Syntax; Überprüfen Sie das Handbuch, das Ihrer MariaDB-Serverversion entspricht, auf die richtige Syntax, um sie in der Nähe von ')' in Zeile 1 zu verwenden

Und noch ein Beispiel:

SELECT GET_FORMAT( DATE, 'JIS', 'OOPS' ); 

Ergebnis:

ERROR 1064 (42000):Sie haben einen Fehler in Ihrer SQL-Syntax; Überprüfen Sie das Handbuch, das Ihrer MariaDB-Serverversion entspricht, auf die richtige Syntax, um sie in der Nähe von ' 'OOPS' )' in Zeile 1
zu verwenden