>  기사  >  데이터 베이스  >  mysql에서 전체 조인...on...을 사용하는 방법

mysql에서 전체 조인...on...을 사용하는 방법

王林
王林앞으로
2023-05-26 17:52:472980검색

    mysql에서 전체 조인...on... 사용

    대부분의 개발자는 내가 어떻게 작성하든 내 SQL 문이 왜 잘못된지 혼란스러워할 수 있습니다.

    …의 전체 조인은 mysql 데이터베이스를 지원하지 않고 Oracle 데이터베이스만 지원하므로 매우 간단합니다.

    더 이상 고민하지 않고 바로 예를 들어보겠습니다.

    select a.* FROM
        (select
        table1.*,table2.*
        from table1 left JOIN table2 on table1.id=table2 .tid <-- 用左外连接 -->
        UNION <-- 通过UNION来链接 -->
        select
        table1.*,table2.*
        from table1 right JOIN table2 on table1.id=table2 .tid) as a <-- 用右外连接 -->
        where 
        a.id = #{id} <-- 如果要根据条件查询,必须要把上面括号里的当做子查询,条件必须写在外面 -->
        ORDER BY id <-- 其它操作跟在后面 -->

    아주 간단해 보이지는 않지만, 초보자에게는 오랜 시간 동안 어려움을 겪을 수 있으므로 여기에서 마치겠습니다.

    mysql의 조인 연결 유형은 무엇입니까?

    어떤 종류의 조인이 있나요?

    (1) 내부 조인

    select * from user1 a INNER JOIN user2 b on a.id=b.id

    INNER JOIN 내부 조인은 두 테이블의 교차점을 보여줍니다. 즉, 얻은 것은 쿼리 조건(위의 a.id)입니다. sql문) =b.id) 정보입니다.

    (2) JOIN 연결의 Left Join/Left Outer Join (LEFT JOIN/LEFT OUTER JOIN)

    select * from user1 a LEFT JOIN user2 b on a.id=b.id

    Left 조인은 왼쪽 테이블의 모든 정보와 쿼리 조건(예: .id 위) =b.id, 즉 관련 질의 조건을 만족하는 왼쪽과 오른쪽 테이블의 정보) 두 부분으로 나뉜다.

    (3) JOIN 연결의 RIGHT JOIN/RIGHT OUTER JOIN

    select * from user1 a RIGHTJOIN user2 b on a.id=b.id

    오른쪽 조인은 RIGHT JOIN 오른쪽에 있는 오른쪽 테이블의 모든 정보와 관련 쿼리 조건을 만족하는 왼쪽 및 오른쪽 정보를 쿼리합니다( 이것이 위의 a.id=b.id 조건입니다.

    (4) 완전 조인(full Join …on…)3848a87a02ad4ed82c64145311021d89

    select * from user1 a FULL JOIN user2 b on a.id=b.id

    full 외부 조인은 실제로 왼쪽 조인과 오른쪽 조인의 집합입니다. 즉, 왼쪽 테이블과 오른쪽 테이블의 모든 데이터를 쿼리한다는 의미입니다.

    (5) 교차 조인(cross Join...)

    select * from user1 a CROSS JOIN user2 b on a.id=b.id

    교차 조인은 데카르트 곱이라고도 하며, 쿼리에서 반환되는 행 수는 두 테이블의 행 수를 곱한 것과 같습니다. .

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

    성명:
    이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제