2012-02-08 22 views
1

10個の入力tsvファイルのセットから疎テーブルを作成しようとしています。MySQL LOAD DATA IN FILE単一の列を更新します

各ファイルには、宛先テーブルの列の1つに対してprimary_key、c​​olumn値があります。

ただし、各ファイルには、値を持つ異なるプライマリキーのセットがあります。

LOAD DATA IN FILEを使用してテーブルにロードします。

最初のファイルは正常に読み込まれますが、重複した主キーが見つかった場合は、2番目のファイルに問題が発生します。

クエリでREPLACEを使用すると、最初の列にロードされた値は失われますが、IGNOREを使用すると、値は2番目の列に読み込まれません。

すべての入力ファイルを1つのファイルにまとめるためにヘアリーテキスト操作以外の方法はありますか?

+0

一時テーブルに一時ファイルをロードし、INSERT..SELECT..UPDATE ONUP UPDATEクエリを使用して、そのテーブルのデータをスパーステーブルにコピーします。http:// stackoverflow .com/questions/2472229/insert-into-select-from-duplicate-key-update –

答えて

0

REPLACEモードはレコードfirsltyを削除するためです。

使用しているテンションテーブルについては、ギリシャ語で同意してください。あなたはdbForge Studio for MySQLData Import tool(追加/更新モード)を使用することができ、またhttp://forums.mysql.com/read.php?10,362103,362423#msg-362423

(CSVファイルからのデータインポート無料のExpress Editionのに制限はありません) - ここでは、このソリューションの例があります。

関連する問題