> 데이터 베이스 > MySQL 튜토리얼 > SQL Server에서 중복 행의 ID를 찾고 검색하는 방법은 무엇입니까?

SQL Server에서 중복 행의 ID를 찾고 검색하는 방법은 무엇입니까?

DDD
풀어 주다: 2024-12-28 20:37:10
원래의
287명이 탐색했습니다.

How to Find and Retrieve IDs of Duplicate Rows in SQL Server?

연결된 ID를 사용하여 SQL Server에서 중복 행 찾기

대규모 데이터 세트를 처리할 때 중복 행이 발생하는 것은 드문 일이 아닙니다. SQL Server에서는 데이터 무결성을 보장하고 저장 공간을 최소화하기 위해 이러한 중복 항목을 식별하고 제거하는 것이 중요합니다. 이 문서에서는 SQL Server 데이터베이스에서 중복 행을 찾고 관련 ID를 검색하는 방법에 대한 포괄적인 가이드를 제공합니다.

중복 행 식별

첫 번째 단계는 다음과 같습니다. 중복 행을 식별하십시오. 이는 특정 열을 기준으로 행을 그룹화한 다음 각 그룹의 발생 횟수를 계산하여 수행할 수 있습니다. 개수가 1보다 큰 행은 중복으로 간주됩니다.

원래 쿼리

SELECT orgName, COUNT(*) AS dupes
FROM organizations
GROUP BY orgName
HAVING COUNT(*) > 1;
로그인 후 복사

이 쿼리는 다음과 같은 출력을 생성합니다.

| orgName | dupes |
|-------------------|-------|
| ABC Corp | 7     |
| Foo Federation | 5     |
| Widget Company | 2     |
로그인 후 복사

관련 검색 중 ID

관련 ID를 검색하려면 내부 조인 절을 사용하여 공통 열을 기반으로 두 테이블을 병합할 수 있습니다. 이 경우 중복 개수를 계산하는 하위 쿼리를 사용하여 조직 테이블을 조인할 수 있습니다.

수정된 쿼리

select o.orgName, oc.dupeCount, o.id
from organizations o
inner join (
    SELECT orgName, COUNT(*) AS dupeCount
    FROM organizations
    GROUP BY orgName
    HAVING COUNT(*) > 1
) oc on o.orgName = oc.orgName;
로그인 후 복사

이 수정된 쿼리는 다음과 같은 출력을 생성합니다.

| orgName | dupeCount | id |
|-------------------|-------|---|
| ABC Corp | 1 | 34 |
| ABC Corp | 2 | 5 |
| ... | ... | ... |
| Widget Company | 1 | 10 |
| Widget Company | 2 | 2 |
로그인 후 복사

이 결과는 각 중복 조직의 중복 수와 관련 ID를 모두 제공합니다. 이 정보는 중복된 사용자 기록을 수동으로 병합하거나 추가 데이터 관리 작업에 사용될 수 있습니다.

위 내용은 SQL Server에서 중복 행의 ID를 찾고 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿