MySQLでCSVの指定のフィールドをロードする

フィールド名を書くところに@dummyのような
捨てる変数を割り当てるとうまくいった。
こんなことも出来たんだな。
これだとわざわざcsvを編集しなくてもいいから便利。

mysql> LOAD DATA LOCAL INFILE '/tmp/test_table.csv' 
INTO TABLE test_table 
FIELDS TERMINATED BY ',' 
IGNORE 1 LINES           
(
  @dummy, 
  field1, 
  @dummy, 
  field2, 
  @dummy, 
);

ちなみに、最近のバージョンではLOAD DATA LOCAL INFILEはログイン時に
パラメータを渡さないと使えないらしい。

$ mysql -u user -puser db1 --local-infile=1

非推奨なのかな?あとでちゃんと見るか。

参考:

CSVの特定のフィールドをインポート 【OKWave】