STR_TO_DATE
説明
この関数は、指定された形式に基づいて入力されたdatetime文字列をDATETIME値に変換します。
構文
STR_TO_DATE(<datetime_str>, <format>)
パラメータ
| Parameter | デスクリプション |
|---|---|
<datetime_str> | 必須。変換される入力datetime文字列。 |
<format> | 必須。指定されたdatetimeフォーマット文字列。%Y-%m-%d %H:%i:%sなど。具体的なフォーマットパラメータについては、DATE_FORMAT ドキュメントを参照してください。 |
さらに、<format>は以下のいくつかの代替フォーマットをサポートし、それらを通常のフォーマットに解釈します:
| Alternative Input | Interpret as |
|---|---|
yyyyMMdd | %Y%m%d |
yyyy-MM-dd | %Y-%m-%d |
yyyy-MM-dd HH:mm:ss | %Y-%m-%d %H:%i:%s |
Return Value
- 変換されたdatetimeを表すDATETIME値を返します。
- 入力
<datetime_str>または<format>が無効な場合、関数はNULLを返します。
Example
一般的なdatetime文字列をDATETIMEに変換
SELECT STR_TO_DATE('2025-01-23 12:34:56', '%Y-%m-%d %H:%i:%s'),STR_TO_DATE('2025-01-23 12:34:56', 'yyyy-MM-dd HH:mm:ss');
+---------------------------------------------------------+-----------------------------------------------------------+
| str_to_date('2025-01-23 12:34:56', '%Y-%m-%d %H:%i:%s') | str_to_date('2025-01-23 12:34:56', 'yyyy-MM-dd HH:mm:ss') |
+---------------------------------------------------------+-----------------------------------------------------------+
| 2025-01-23 12:34:56.000000 | 2025-01-23 12:34:56.000000 |
+---------------------------------------------------------+-----------------------------------------------------------+
その他
select STR_TO_DATE('200442 Monday', '%X%V %W'),STR_TO_DATE('2023','%Y');
+-----------------------------------------+---------------------------+
| str_to_date('200442 Monday', '%X%V %W') | str_to_date('2023', '%Y') |
+-----------------------------------------+---------------------------+
| 2004-10-18 | 2023-01-01 |
+-----------------------------------------+---------------------------+