CSV 차이 비교
두 개의 CSV 파일을 비교하여 추가된 행, 삭제된 행, 변경된 셀을 한눈에 확인할 수 있습니다. 원하는 열을 행 식별 키로 지정해 행을 매칭하고 변경 전후 값을 나란히 표시하며, 열 구성이 다른 CSV끼리도 비교할 수 있습니다. 모든 처리는 브라우저 내에서 이루어집니다.
팁
- 행 식별 키 열은 기본적으로 1열이 선택되지만, ID나 기본키에 해당하는 열이 있다면 그 열을 선택하는 것이 좋습니다. 행의 순서나 개수가 바뀌어도 올바르게 대응하는 행을 매칭할 수 있습니다.
- 두 CSV 모두 헤더 행이 없다면 "첫 줄을 헤더로 처리" 체크를 해제하세요. col1, col2… 와 같은 자동 생성된 열 이름으로 비교됩니다.
- "변경된 행" 섹션에서는 키가 일치하는 행끼리 열 단위로 값을 비교하여, 값이 다른 열만 "변경 전 → 변경 후" 형태로 나열합니다.
- TSV(탭 구분) 파일도 구분자를 "탭"으로 전환하기만 하면 그대로 비교할 수 있습니다.
- 파일을 업로드하는 대신 Excel이나 스프레드시트에서 복사한 범위를 그대로 붙여넣어도 동일하게 비교할 수 있습니다.
자주 묻는 질문
여담 ― 텍스트 diff만으로는 CSV 비교가 충분하지 않은 이유
두 CSV 파일의 차이를 확인하는 작업은 전통적으로 Excel에서 두 시트를 나란히 놓고 육안으로 비교하거나, Git 같은 도구로 줄 단위 텍스트 diff를 보는 방식이 일반적이었습니다. 하지만 CSV는 한 줄 안에 여러 값이 쉼표로 나열되는 구조이기 때문에, 줄 단위 diff로는 "그 줄이 바뀌었다"는 것만 알 수 있을 뿐 구체적으로 어느 열이 바뀌었는지는 한눈에 알 수 없습니다. 이 도구가 셀 단위로 변경 지점을 특정하는 것은 바로 이 약점을 보완하기 위해서입니다.
업무 시스템 세계에서는 데이터베이스 테이블을 CSV로 내보내 비교하는 "데이터 대사" 작업이 자주 발생합니다. 이관 전후 데이터가 완전히 일치하는지, 월간 배치 처리 결과가 예상대로인지 확인할 때는 대상 행 수가 수천에서 수만 건에 이르는 경우도 드물지 않습니다. 이런 규모에서는 키 열을 지정해 기계적으로 대조하는 방식이 필수가 됩니다.
Git과 같은 버전 관리 시스템의 diff 알고리즘(Myers diff 알고리즘 등)은 줄 단위의 추가·삭제를 감지하는 데는 뛰어나지만, CSV처럼 "같은 줄이라도 일부 열의 값만 바뀌는" 데이터에는 반드시 최적이라고 할 수 없습니다. 키로 행을 먼저 대응시킨 뒤 셀 단위로 비교하는 이 도구의 방식은 표 형식 데이터의 차이 검출에 특화된 접근법이라 할 수 있습니다.