2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

MySQLについてこの一年間で新しく知ったこと ~ CSVを高速に取り込めるLOAD DATA INFILE~

2
Posted at

Qiita Tech Festa 2026のイベント「MySQLについてこの一年間で新しく知ったこと」に参加します。

この一年でMySQLを触る中で知った機能の一つが LOAD DATA INFILE です。

CSVファイルのデータをテーブルへ登録したい場合、プログラムで1件ずつINSERTする方法もありますが、MySQLにはCSVを直接読み込む機能が用意されています。

今回は簡単に紹介していきます。

使い方

例えば以下のようなCSVファイルがあるとします。

id,name
1,Tanaka
2,Suzuki
3,Sato

このCSVをMySQLへ取り込む場合は次のように記述します。

LOAD DATA INFILE '/tmp/users.csv'
INTO TABLE users
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
IGNORE 1 ROWS;

なんとなく見れば、

  • カンマ区切りでフィールドを分割する
  • 改行ごとに次のレコードとして扱う
  • ヘッダー行は無視する

ということが分かると思います。

よくあるファイルアップロードで使うものだと思うので覚えたいですが、なかなか難しい気がするので、「MySQLでCSVを取り込むならLOAD DATA INFILE」という知識があるだけで、調べるときの取っ掛かりになります。

最近はAIを使って調査することも増えていますが、機能名を知っているだけでも質問しやすくなり、欲しい情報にたどり着きやすくなると感じています。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?