首頁 >資料庫 >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 資料可能具有挑戰性。

一個常見問題是 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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn