INFILEコマンドでインポートするときにMySQLが特定の行を無視するようにしようとしています。基本的には、CSVファイルの「ヘッダー」行です。MySQL infileヘッダー行を無視する
LOAD DATA LOCAL INFILE 'C:\myfile.txt' REPLACE INTO TABLE my_db.my_table;
私はignoreコマンドに見てきたが、それは重複キーを無視するためです。 .txtファイルの特定のエントリ/行を無視する方法はありますか?
INFILEコマンドでインポートするときにMySQLが特定の行を無視するようにしようとしています。基本的には、CSVファイルの「ヘッダー」行です。MySQL infileヘッダー行を無視する
LOAD DATA LOCAL INFILE 'C:\myfile.txt' REPLACE INTO TABLE my_db.my_table;
私はignoreコマンドに見てきたが、それは重複キーを無視するためです。 .txtファイルの特定のエントリ/行を無視する方法はありますか?
IGNORE
はLOAD DATA INFILE
文で2つの意味があります。 重複したキーエラーが発生すると、最初は置換/無視されます。 2番目の意味はあなたが探しているものです。完全な文では、あなたは、ランダムな行をスキップすることはできませんが、あなたがこのようなあなたの入力ファイルの先頭にスキップするn行することができますIGNORE n LINES
です:
LOAD DATA LOCAL INFILE 'C:\myfile.txt' REPLACE INTO TABLE my_db.my_table IGNORE 1 LINES;
これは最初の5行の終わりを無視するだろう行EOL
はデフォルトで\n
に設定されており、任意の文字に設定することができますLINES TERMINATED BY 'CHR'
だから、5行目を無視するのか、それとも最初の5行を無視するのでしょうか? – Plummer
これは、行末(EOF)がデフォルトで "\ n"で、 'LINES TERMINATED BY 'CHR''を使用して任意の文字に設定できる最初の5行を無視します。 –
非常に有益です。 – Plummer