MySQL 조인 의 완전 용법

6237 단어 MySQLJOIN
외 접외부 연결 은 왼쪽 에서 밖으로 연결 되 고 오른쪽 에서 밖으로 연결 되 거나 완전한 외부 연결 이 될 수 있다.FROM 자구 에서 외부 연결 을 지정 할 때 다음 몇 개의 키워드 중 한 그룹 으로 지정 할 수 있 습 니 다:LEFT JOIN 또는 LEFT OUTER JOIN.왼쪽 에서 밖으로 연 결 된 결과 집합 은 LEFT OUTER 자구 에서 지정 한 왼쪽 표 의 모든 줄 을 포함 합 니 다.연결 열 에 일치 하 는 줄 만 이 아 닙 니 다.왼쪽 표 의 한 줄 이 오른쪽 표 에 일치 하 는 줄 이 없다 면 연 결 된 결과 집합 줄 에서 오른쪽 표 의 모든 선택 목록 열 은 빈 값 입 니 다.라이트 존 이나 라이트 아웃 터 존.오른쪽 에서 바깥으로 연결 하 는 것 은 왼쪽 에서 바깥으로 연결 하 는 역방향 연결 이다.오른쪽 표 의 모든 줄 을 되 돌려 줍 니 다.오른쪽 표 의 한 줄 이 왼쪽 표 에 일치 하 는 줄 이 없 으 면 왼쪽 표 에 빈 값 을 되 돌려 줍 니 다.FULL JOIN 또는 FULL OUTER JOIN.전체 외부 연결 은 왼쪽 표 와 오른쪽 표 의 모든 줄 을 되 돌려 줍 니 다.한 줄 이 다른 표 에 일치 하 는 줄 이 없 을 때 다른 표 의 선택 목록 열 은 빈 값 을 포함 합 니 다.표 사이 에 일치 하 는 줄 이 있 으 면 전체 결과 집합 줄 은 기본 표 의 데이터 값 을 포함 합 니 다.적어도 두 표 에 속 하 는 줄 이 연결 조건 에 부합 되 어야 내 연 이 되 돌아 올 수 있다.내 연결 은 다른 표 의 모든 줄 과 일치 하지 않 는 줄 을 제거 합 니 다.외부 연결 은 FROM 자구 에서 언급 한 표 나 보기 의 모든 줄 을 되 돌려 줍 니 다.이 줄 들 이 WHERE 나 HAVING 검색 조건 에 부합 되 기만 하면 됩 니 다.왼쪽 을 통 해 외부 로 연 결 된 왼쪽 표 의 모든 줄 과 오른쪽 을 통 해 외부 로 연 결 된 오른쪽 표 의 모든 줄 을 검색 합 니 다.전체 외부 연결 중 두 표 의 모든 줄 이 되 돌아 갑 니 다.Microsoft® SQL Server™ 2000 은 FROM 자구 에서 지정 한 외부 연결 에 대해 다음 과 같은 SQL-92 키 워드 를 사용 합 니 다.LEFT OUTER JOIN 또는 LEFT JOIN RIGHT OUTER JOIN 또는 RIGHT JOIN FULL OUTER JOIN 또는 FULL JOIN SQL Server 는 SQL-92 외부 연결 문법 을 지원 하고 WHERE 자구 에서*=*연산 자 를 사용 하여 외부 연결 을 지정 하 는 구식 문법 을 사용 합 니 다.SQL-92 문법 은 나 쁜 의미 가 생기 기 쉽 지 않 으 며,구식 Transact-SQL 외부 연결 은 나 쁜 의미 가 생 길 수 있 으 므 로 SQL-92 문법 을 사용 하 는 것 을 권장 합 니 다.왼쪽 에서 밖으로 연결 하 는 가설 을 사용 하여 city 열 에 authors 표 와 Publishers 표를 연결 합 니 다.그 결과 출판사 가 있 는 도시 에 사 는 저자(본 사례 에 서 는 Abraham Bennet 과 Cheryl Carson)만 나 타 났 다.결과 에 모든 작 가 를 포함 하려 면 출판사 가 같은 도시 에 살 고 있 든 없 든 SQL-92 를 사용 하여 왼쪽으로 연결 하 십시오.다음은 Transact-SQL 왼쪽 에서 바깥으로 연 결 된 조회 와 결과:USE pubs SELECT a.aufname, a.au_lname, p.pub_name FROM authors a LEFT OUTER JOIN publishers p ON a.city = p.city ORDER BY p.pub_name ASC, a.au_lname ASC, a.au_fname ASC 다음은 결과 집:aufname au_lname pub_name -------------------- ------------------------------ ----------------- Reginald Blotchet-Halls NULL Michel DeFrance NULL Innes del Castillo NULL Ann Dull NULL Marjorie Green NULL Morningstar Greene NULL Burt Gringlesby NULL Sheryl Hunter NULL Livia Karsen NULL Charlene Locksley NULL Stearns MacFeather NULL Heather McBadden NULL Michael O'LearyNULL Sylvia Panteley NULL Albert Ringer NULL Anne Ringer NULL Meander Smith NULL Dean Straight NULL Dirk Stringer NULL Johnson White NULL Akiko Yokomoto NULL Abraham Bennet Algodata Infosystems Cheryl Carson Algodata Infosystems(23 row(s)affected)publishers 표 의 도시 열 과 일치 하 든 안 하 든LEFT OUTER JOIN 은 결과 에 authors 표 의 모든 줄 을 포함 합 니 다.주의:결과 에 열 거 된 대부분의 작가 들 은 일치 하 는 데이터 가 없 기 때문에 이 줄 들 의 pubname 열 은 빈 값 을 포함 합 니 다.오른쪽 에서 밖으로 연결 하 는 가설 을 사용 하여 city 열 에 authors 표 와 Publishers 표를 연결 합 니 다.그 결과 출판사 가 있 는 도시 에 사 는 저자(본 사례 에 서 는 Abraham Bennet 과 Cheryl Carson)만 나 타 났 다.SQL-92 오른쪽 연결 연산 자 Right OUTER JOIN 은 첫 번 째 표 에 일치 하 는 데이터 가 있 든 없 든 결 과 는 두 번 째 표 의 모든 줄 을 포함 합 니 다.결과 에 모든 출판 사 를 포함 하려 면 도시 에 출판사 가 살 고 있 든 없 든 SQL-92 를 사용 하여 오른쪽으로 연결 하 십시오.다음은 Transact-SQL 오른쪽 에서 바깥으로 연 결 된 조회 와 결과:USE pubs SELECT a.aufname, a.au_lname, p.pub_name FROM authors AS a RIGHT OUTER JOIN publishers AS p ON a.city = p.city ORDER BY p.pub_name ASC, a.au_lname ASC, a.au_fname ASC 다음은 결과 집:aufname au_lname pub_Name----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------서술 어(예 를 들 어 연결 과 상수 비교)를 사용 하면 외부 연결 을 더욱 제한 할 수 있다.다음 예 는 같은 오른쪽 에서 밖으로 연결 되 지만 판 매 량 이 50 권 이하 인 책 을 제거 하 는 책 이름 을 포함 합 니 다:USE pubs SELECT s.storid, s.qty, t.title FROM sales s RIGHT OUTER JOIN titles t ON s.title_id = t.title_id AND s.qty > 50 ORDER BY s.stor_id ASC 다음은 결과 집:storid qty title ------- ------ ------------------------------------------------------ --- (null) (null) But Is It User Friendly? (null) (null) Computer Phobic AND Non-Phobic Individuals: Behavior Variations (null) (null) Cooking with Computers: Surreptitious Balance Sheets (null) (null) Emotional Security: A New Algorithm (null) (null) Fifty Years in Buckingham Palace Kitchens 7066 75 Is Anger the Enemy? (null) (null) Life Without Fear (null) (null) Net Etiquette (null) (null) Onions, Leeks, and Garlic: Cooking Secrets of the Mediterranean (null) (null) Prolonged Data Deprivation: Four Case Studies (null) (null) Secrets of Silicon Valley (null) (null) Silicon Valley Gastronomic Treats (null) (null) Straight Talk About Computers (null) (null) Sushi, Anyone? (null) (null) The Busy Executive's Database Guide (null) (null) The Gourmet Microwave (null) (null) The Psychology of Computer Cooking (null) (null) You Can Combat Computer Stress! (18 row(s)affected)서술 어 에 대한 더 많은 정 보 는 WHERE 를 참조 하 십시오.전체 외부 연결 을 사용 합 니 다.연결 결과 에 일치 하지 않 는 줄 을 포함 하여 일치 하지 않 는 정 보 를 유지 하려 면 전체 외부 연결 을 사용 하 십시오.Microsoft® SQL Server™ 2000 은 전체 외부 연결 연산 자 FULL OUTER JOIN 을 제공 합 니 다.다른 표 에 일치 하 는 값 이 있 든 없 든 이 연산 자 는 두 표 의 모든 줄 을 포함 합 니 다.city 열 에 authors 표 와 Publishers 표를 연결 한다 고 가정 합 니 다.그 결과 출판사 가 있 는 도시 에 사 는 저자(본 사례 에 서 는 Abraham Bennet 과 Cheryl Carson)만 나 타 났 다.SQL-92 FULL OUTER JOIN 연산 자 는 표 에 일치 하 는 데이터 가 있 든 없 든 결 과 는 두 표 의 모든 줄 을 포함 합 니 다.결과 에 모든 작가 와 출판 사 를 포함 하려 면 도시 에 출판사 나 출판사 가 같은 도시 에 살 고 있 든 없 든 완전한 외부 연결 을 사용 하 십시오.다음은 Transact-SQL 전체 외부 연결 조회 및 결과:USE pubs SELECT a.aufname, a.au_lname, p.pub_name FROM authors a FULL OUTER JOIN publishers p ON a.city = p.city ORDER BY p.pub_name ASC, a.au_lname ASC, a.au_fname ASC 다음은 결과 집:aufname au_lname pub_name -------------------- ---------------------------- -------------------- Reginald Blotchet-Halls NULL Michel DeFrance NULL Innes del Castillo NULL Ann Dull NULL Marjorie Green NULL Morningstar Greene NULL Burt Gringlesby NULL Sheryl Hunter NULL Livia Karsen NULL Charlene Locksley NULL Stearns MacFeather NULL Heather McBadden NULL Michael O'Leary NULL Sylvia Panteley NULL Albert Ringer NULL Anne Ringer NULL Meander Smith NULL Dean Straight NULL Dirk Stringer NULL Johnson White NULL Akiko Yokomoto NULL Abraham Bennet Algodata Infosystems Cheryl Carson Algodata Infosystems NULL NULL Binnet & Hardley NULL NULL Five Lakes Publishing NULL NULL GGG&G NULL NULL Lucerne Publishing NULL NULL New Moon Books NULL NULL Ramona Publishers NULL NULL Scootney Books (30 row(s) affected)

좋은 웹페이지 즐겨찾기