CSV突合・差分抽出
新旧の顧客一覧や商品マスタなど、ヘッダー付きの2つのCSVをキー列で突き合わせるツールです。行の順序に関係なく追加・削除・更新された行を分類し、更新されたセルの変更前後を表示します。差分はCSVとして保存でき、すべてブラウザ内で処理されます。
ヘッダー付きのCSVを左右に入力すると、キー列で突合した結果がここに表示されます。
使い方
- 左に旧CSV、右に新CSVを貼り付けるか、ファイルを読み込みます。1行目はヘッダーとして扱います。
- 「キー列」で、行を突き合わせるための列(IDなど)を選びます。左右に共通する列から選べます。
- 追加・削除・更新された行が一覧表示され、更新された行は変更されたセルの前後の値が表示されます。
- 「差分をCSVで保存」で、差分の種別・キー・列・変更前後の値を含むCSVを保存できます。
このツールについて
CSVをテキストとして比較すると、行の並び順が変わっただけでも差分が出てしまいます。CSV突合ツールはキー列の値で行を対応付けるため、実際に追加・削除・更新された行だけを確認できます。
引用符・カンマ・セル内の改行を含むCSVに対応しています。キーやセルの値は文字列として比較するため、「001」と「1」のような先頭ゼロの違いも区別されます。キーが重複している行や空の行がある場合は、曖昧なまま突き合わせず、該当する行を表示します。
左右で列構成が異なる場合は、片方にしかない列を明示したうえで、共通する列だけを比較します。複合キーやあいまい一致には対応していません。CSVがサーバーへ送信されることはありません。
旧CSVを「id,name 1,Aki 2,Ren」、新CSVを「id,name 2,Ren 1,Aoi 3,Mio」としてidをキーに選ぶと、1はnameの更新、3は追加、2は変更なしになります。行が入れ替わっても、同じidのレコードを対応付けて結果を確認できます。
キーもセルも文字列の完全一致で扱うため、空白や先頭ゼロの差は残ります。番号を数値として丸めずに比較したい名簿や商品一覧に適しています。重複キーがある場合は先に解消してから突合し、元CSVの送信なしで差分を取り出せます。
よくある質問
キーが重複しているとどうなりますか?
どの行同士を比べるべきか決められないため、突合は行わず、重複しているキーと該当するレコード番号を表示します。データを修正するか、一意な別の列をキーに選んでください。
レコード番号とは何ですか?
ヘッダーを1として数えたCSVの行(レコード)の番号です。セル内に改行がある場合、テキストエディタの行番号とは一致しないことがあります。
Excelで作ったCSVは読み込めますか?
UTF-8のCSVであれば読み込めます。先頭のBOMは自動で取り除きます。保存するCSVもExcelで文字化けしないようBOM付きのUTF-8で出力します。