ホームページ  >  記事  >  データベース  >  MySQL の STR_TO_DATE 関数を使用して文字列を日付に変換する

MySQL の STR_TO_DATE 関数を使用して文字列を日付に変換する

PHPz
PHPzオリジナル
2023-07-26 12:05:091265ブラウズ

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 関数は複数の日付形式もサポートしています。一般的に使用される日付形式パターン文字列とそれに対応する意味を次に示します。

  • '%Y-%m-%d': "YYYY-MM-DD" 形式で表される日付
  • '%Y/%m/%d': "YYYY/MM/DD" 形式で表現された日付
  • '%Y%m%d': "YYYYMMDD" 形式で表現された日付
  • '%Y%m': "YYYYMM" 形式で表現された日付
  • '%Y-%m-%d %H:%i:%s': "YYYY- 日付と時刻" で表現された日付MM-DD HH:MM:SS" 形式で表されます

日付を変換するとき、STR_TO_DATE 関数は指定された形式モードに従って日付を検証することに注意してください。変換対象の文字列日付が指定された形式パターンと一致しない場合は、NULL が返されます。したがって、STR_TO_DATE 関数を使用する場合は、形式パターンが正しいことを確認することが重要です。

要約すると、MySQL の STR_TO_DATE 関数は文字列日付を日付型に簡単に変換できます。適切な形式パターンを指定することで、さまざまな日付形式の文字列を柔軟に処理できます。日常のデータ処理において、この機能は非常に実用的なツールです。

参考資料:

  • STR_TO_DATE 関数のドキュメント: https://dev.mysql.com/doc/refman/8.0/en/date-and-time-functions.html# function_str-to-date

以上がMySQL の STR_TO_DATE 関数を使用して文字列を日付に変換するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。