>데이터 베이스 >MySQL 튜토리얼 >mysql에서 차이점 세트를 찾는 방법

mysql에서 차이점 세트를 찾는 방법

藏色散人
藏色散人원래의
2021-12-01 15:16:0613740검색

차이 집합을 찾는 Mysql 방법: 1. 두 테이블의 차이 집합을 필터링하려면 존재하지 않음을 사용합니다. 2. LEFT JOIN 연결 후 생성된 빈 필드 값을 사용하여 두 테이블의 차이 집합을 필터링합니다.

mysql에서 차이점 세트를 찾는 방법

이 문서의 운영 환경: Windows 7 시스템, mysql 버전 8.0, Dell G3 컴퓨터.

mysql에서 차이점 집합을 찾는 방법은 무엇입니까?

mysql에서 필드 수가 다른 두 테이블의 일치하지 않는 데이터 레코드를 쿼리하는 방법은 무엇입니까? 일반적으로 NOT EXISTS(존재하지 않는 절) 또는 LEFT JOIN을 사용하여 생성할 수 있습니다. 왼쪽(오른쪽) 연결. 빈 필드 값을 사용하여 두 테이블 간의 차이를 필터링합니다.

1. NOT EXISTS

not presents 비교 필드에 사용 가능한 인덱스가 있으면 작업 효율이 매우 높지만 인덱스가 없으면 대용량으로 실행됩니다. 데이터 테이블을 사용할 경우 운영 효율성이 극도로 떨어지므로 이때는 사용하지 않는 것이 좋습니다

SELECT
    * 
FROM
    smd_employee t1 
WHERE
    NOT EXISTS ( SELECT 1 FROM asd_user_account t2 WHERE t2.u_phone = t1.employee_phone );

2. LEFT JOIN

왼쪽(오른쪽) 조인을 사용하세요 두 개의 테이블 조인을 구현해야 하면 출력 세트의 레코드 줄이 늘어날 수 있으므로 차이 세트를 찾으십시오.

일대일 또는 일대다가 아닌 경우 연결하기 전에 다대다 상황을 다대일로 처리해야 합니다. 그렇지 않으면 출력 레코드 세트가 올바르지 않을 수 있습니다.

SELECT
    a.* 
FROM
    smd_employee a
    LEFT JOIN asd_user_account b ON b.u_phone = a.employee_phone 
WHERE
    b.u_phone IS NULL;

차이 집합을 찾는 방법에는 두 가지가 있습니다. 사용 가능한 인덱스가 있는 경우에는 왼쪽 조인보다 효율성이 더 높습니다. 반대로 왼쪽 조인이 더 효율적입니다.

[관련 권장 사항:

mysql 영상 튜토리얼

]

위 내용은 mysql에서 차이점 세트를 찾는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.