ホームページ >データベース >mysql チュートリアル >さまざまな形式の CSV 日付を MySQL にインポートするにはどうすればよいですか?

さまざまな形式の CSV 日付を MySQL にインポートするにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-19 07:47:02896ブラウズ

How to Import CSV Dates with Different Formats into MySQL?

異なる日付形式で CSV を MySQL にインポートする

希望する形式とは異なる日付形式で CSV データをインポートするのは難しい場合があります。

よくある問題の 1 つは、CSV ファイル内の日付が、MySQL がネイティブに認識しない形式 (2011 年 1 月 31 日など) である場合です。このようなデータをインポートするには、インポート プロセス中に日付形式を変換する必要があります。

解決策:

MySQL は LOAD DATA INFILE ステートメントを通じて解決策を提供します。フォーマット文字列変換オプションを使用:

LOAD DATA INFILE 'file_name.csv'
INTO TABLE table_name
FIELDS TERMINATED BY ';'
LINES TERMINATED BY '\n'
(id, column2, column3, @date_time_variable) 
SET date_time_column = STR_TO_DATE(@date_time_variable, '%d-%b-%Y');

ステートメントの内訳:

  • @date_time_variable: この変数は CSV からの値を一時的に保存します。ファイルの日付列。
  • STR_TO_DATE: STR_TO_DATE 関数は、指定された形式を使用して文字列を DATETIME 値に変換します。
  • %d-%b-%Y: この形式文字列は、日付を予期するように MySQL に指示します。形式は 31-Jan-2011.

手順:

  • 上記の LOAD DATA INFILE ステートメントを使用して CSV ファイルをインポートします。
  • ターゲット テーブルの date_time_column フィールドには、変換された日付が YYYY-MM-DD 形式で保存されます。

例:

LOAD DATA INFILE 'dates.csv'
INTO TABLE date_table
FIELDS TERMINATED BY ';'
LINES TERMINATED BY '\n'
(id, date_column, @date_time_variable)
SET date_time_column = STR_TO_DATE(@date_time_variable, '%d-%b-%Y');

以上がさまざまな形式の CSV 日付を MySQL にインポートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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