MariaDBでは、GET_FORMAT()
は、フォーマット文字列を返す組み込みの日付と時刻の関数です。
この関数は、DATE_FORMAT()
などのフォーマット文字列を必要とする関数を操作する場合に役立ちます。 およびSTR_TO_DATE()
。
構文
構文は次のようになります:
GET_FORMAT({DATE|DATETIME|TIME}, {'EUR'|'USA'|'JIS'|'ISO'|'INTERNAL'})
例
次に例を示します:
SELECT GET_FORMAT(DATE, 'EUR');
結果:
+-------------------------+ | GET_FORMAT(DATE, 'EUR') | +-------------------------+ | %d.%m.%Y | +-------------------------+
これは、EUR形式の日付を操作するときに使用される形式を示しています。
別の例を示します。今回は、日時のISO形式の文字列を返します:
SELECT GET_FORMAT(DATETIME, 'ISO');
結果:
+-----------------------------+ | GET_FORMAT(DATETIME, 'ISO') | +-----------------------------+ | %Y-%m-%d %H:%i:%s | +-----------------------------+
DATE_FORMAT()
を使用
この例では、GET_FORMAT()
を使用します DATE_FORMAT()
の2番目の引数として 働き。これにより、使用する実際のフォーマット文字列を覚えていなくても、日付をフォーマットできます。
SELECT DATE_FORMAT('2030-08-25', GET_FORMAT(DATE,'USA'));
結果:
+---------------------------------------------------+ | DATE_FORMAT('2030-08-25', GET_FORMAT(DATE,'USA')) | +---------------------------------------------------+ | 08.25.2030 | +---------------------------------------------------+
可能なフォーマット文字列
可能なフォーマット文字列の表は次のとおりです。
引数 | 結果の形式 |
---|---|
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’ |
引数がありません
GET_FORMAT()
を呼び出す 引数の数が間違っているか、引数を渡さないと、エラーが発生します:
SELECT GET_FORMAT();
結果:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1
そして別の例:
SELECT GET_FORMAT( DATE, 'JIS', 'OOPS' );
結果:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ' 'OOPS' )' at line 1