MySQL の STR_TO_DATE 関数を使用して文字列を日付に変換する
MySQL データベースでは、文字列を日付に変換する必要があることがよくあります。現時点では、MySQL が提供する STR_TO_DATE 関数を使用してこの機能を実現できます。 STR_TO_DATE 関数は、指定された形式の文字列を日付型に変換でき、複数の日付形式をサポートします。
それでは、具体的な例を見てみましょう。 order という名前のテーブルがあり、そのうちの 1 つが order_date であり、文字列型の日付を「YYYY-MM-DD」の形式で格納するとします。日付の計算と比較を実行するには、これらの文字列日付を日付型に変換する必要があります。
まず、サンプル テーブル注文を作成し、サンプル データを挿入する必要があります。
CREATE TABLE orders ( id INT PRIMARY KEY AUTO_INCREMENT, order_date VARCHAR(10) ); INSERT INTO orders (order_date) VALUES ('2020-01-01'), ('2020-02-15'), ('2020-03-30'), ('2020-04-10');
次に、STR_TO_DATE 関数を使用して、order_date 列の文字列日付を日付型に変換します。具体的な操作は次のとおりです。
SELECT id, STR_TO_DATE(order_date, '%Y-%m-%d') AS order_date FROM orders;
上記のコードでは、STR_TO_DATE 関数を使用して、order_date 列の文字列日付を日付型に変換します。このうち、「%Y-%m-%d」は日付形式パターン文字列で、order_date 列の日付の形式を指定するために使用されます。パターン文字列では、%Y は年、%m は月、%d は日付を表します。
上記のクエリ ステートメントを実行すると、次の結果が得られます。
+----+------------+ | id | order_date | +----+------------+ | 1 | 2020-01-01 | | 2 | 2020-02-15 | | 3 | 2020-03-30 | | 4 | 2020-04-10 | +----+------------+
order_date 列の文字列日付が正常に日付型に変換されたことがわかります。
一般的な日付形式 '%Y-%m-%d' に加えて、STR_TO_DATE 関数は複数の日付形式もサポートしています。一般的に使用される日付形式パターン文字列とそれに対応する意味を次に示します。
日付を変換するとき、STR_TO_DATE 関数は指定された形式モードに従って日付を検証することに注意してください。変換対象の文字列日付が指定された形式パターンと一致しない場合は、NULL が返されます。したがって、STR_TO_DATE 関数を使用する場合は、形式パターンが正しいことを確認することが重要です。
要約すると、MySQL の STR_TO_DATE 関数は文字列日付を日付型に簡単に変換できます。適切な形式パターンを指定することで、さまざまな日付形式の文字列を柔軟に処理できます。日常のデータ処理において、この機能は非常に実用的なツールです。
参考資料:
以上がMySQL の STR_TO_DATE 関数を使用して文字列を日付に変換するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。