제가 직접 테이블에 참가했는데 아래 이미지에 중복된 쌍이 강조 표시되어 있습니다. 어떻게 삭제할 수 있나요?
으아아아
이름 1 |
이름 2 |
앨리스 루이스 |
엘리자베스 블레이크 |
크리스 토마스 |
존 스미스 |
크리스 토마스 |
마이크 화이트 |
엘리자베스 블레이크 |
앨리스 루이스 |
엘리자베스 블레이크 |
잭 그린 |
잭 그린 |
엘리자베스 블레이크 |
조 마르티네즈 |
마이크 앤더슨 |
존 스미스 |
크리스 토마스 |
마이크 앤더슨 |
조 마르티네즈 |
마이크 화이트 |
크리스 토마스 |
위의 표는 한때 사진이었던 것입니다
이렇게 하면 됩니다
으아아아이 예
를 참조하세요.데이터베이스를 재현하기 위해 DDL 및 DML 문을 만들고 고유한 쌍을 검색하기 위해 쿼리를 작성했습니다. 다른 사람들에게 도움이 될 수 있는 "빌드" 코드는 다음과 같습니다.
으아아아리팩터링된 쿼리는 다음과 같습니다.
으아아아동일한 하위 쿼리는 별칭 A와 B를 두 번 사용하여
reviewers
和ratings
테이블을 결합하고 각 리뷰어-도서 평가 쌍에 대한 데이터를 검색합니다. p>기본 외부 쿼리는 하위 쿼리 결과에서 고유한 리뷰어 이름 쌍을 선택합니다. 3가지 조건 하에서 하위 쿼리 A와 B 사이에
JOIN
를 사용합니다.A.book_id = B.book_id
그래서 이 리뷰어 쌍은 동일한 책을 평가했습니다.A.id B.id
자체 일치를 방지하기 위해 동일한 ID를 가진 리뷰어 쌍을 필터링하는 데 사용됩니다.A.name 쌍이 아래 출력과 일치하도록 주문되어 중복이 제거되는지 확인하세요. 이렇게 하면 특정 쌍에 대해 "Elizabeth Black-Jack Green"과 같은 하나의 이름 조합만 고려되지만 "Jack Green-Elizabeth Black"은 고려되지 않습니다.
다음은 재구성된 쿼리에서 얻을 수 있는 출력입니다.
으아아아