SQL Server 테이블 비교: 차이점 찾기 종합 가이드
두 SQL Server 테이블 간의 데이터 불일치를 식별하려면 각 테이블에 고유한 행을 찾아내는 방법이 필요합니다. 다음 쿼리는 이를 효율적으로 달성합니다.
<code class="language-sql">(SELECT * FROM table1 EXCEPT SELECT * FROM table2) UNION ALL (SELECT * FROM table2 EXCEPT SELECT * FROM table1)</code>
쿼리 분석:
EXCEPT
연산자는 table1
에는 있지만 table2
에는 없는 행을 분리합니다.UNION ALL
은 첫 번째 EXCEPT
작업의 결과를 EXCEPT
에 대한 미러링된 table2
작업과 병합하여 모든 불일치를 드러냅니다.예시:
각각 TempTestData
, RealData
, FirstName
열이 있는 LastName
및 Product
두 개의 테이블을 가정해 보겠습니다. 이러한 열에서 서로 다른 값을 가진 행을 찾으려면 다음 쿼리를 사용하십시오.
<code class="language-sql">(SELECT * FROM TempTestData EXCEPT SELECT * FROM RealData) UNION ALL (SELECT * FROM RealData EXCEPT SELECT * FROM TempTestData)</code>
이 쿼리는 두 테이블 모두에서 지정된 열의 변형을 나타내는 모든 행을 반환합니다.
중요 고려 사항:
NULL
값이 포함된 테이블의 경우 LEFT JOIN
또는 FULL OUTER JOIN
은 NULL
에 비해 더 강력한 EXCEPT
비교 처리를 제공합니다.위 내용은 두 SQL Server 테이블 간의 차이점을 찾는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!