私は2つのcsv(300,000行のA、1 000,000行のB)を持っています。レコードは列ID(関係1-1)によって関連付けられますが、列の順序は同じではなく、ID順ではありません。私は効率的に2つのcsvと+300000のレコードを比較する(awkで)
B.Field01,B.ID,B.Field02
g,2,f
f,4,r
h,6,k
a,1,3
(私は時間を選択する、6
B.csvA.ID,A.Field01,A.Field02
2,a,d
4,b,e
1,c,f
A.csv AにIDが存在しないため、Bの700の000行を取得する必要が、k)
私はsqliteのようなsgbdで解決できると思いますが、awkのようにもっとシンプルで効率的な方法で解決できると確信しています。
私は私が見つけたこのコマンドを適応したい:
awk 'ARGIND==1 {x[$0]++; next} !x[$0]' B.csv A.csv
は、しかし、これは全体のラインを比較して、私は比較するためのフィールドとして、具体的A.IDとB.IDを選択する方法がわかりません。
私はこれを解決する他の効率的なアプローチにも興味があります!
乾杯
ありがとうございました!それはまさに私が探していたものです。私はまた、他の貢献とコメントにも感謝しています。ではごきげんよう。 – Megamini