2 つのフィールドを持つファイルに、5 億以上のレコードを含むデータがblob
ありますc_id
。
他の 2 つのファイルには、同じデータが別の形式で含まれています。BLOB を含むファイルと、レコードごとの c_ids のコンマ区切りリスト。
私は2つのテーブルを持っています:
table_a: [id, blob] # id is auto-increment
table_b: [a_id, c_id]
一意の BLOB ごとに、table_a のレコードを作成する必要があります。ファイル内の各レコードに対して、table_a への適切な外部キーを使用して table_b 内のレコードを作成する必要があります。
私が現在使用している解決策は、を使用して挿入ステートメントを生成することですlast_insert_id
が、遅すぎます。LOAD DATA INFILE を使用したいのですが、自動インクリメント ID が複雑になっています。
例えば
# Raw data
c_id blob
1 aaaa
2 aaaa
3 aaaa
3 aaab
4 aaac
望ましい出力:
# Table_a
id blob
1 aaaa
2 aaab
3 aaac
# Table_b
c_id a_id
1 1
2 1
3 2
3 2
4 3