> 데이터 베이스 > MySQL 튜토리얼 > SQL 쿼리를 사용하여 여러 테이블에서 데이터를 검색하려면 어떻게 해야 합니까?

SQL 쿼리를 사용하여 여러 테이블에서 데이터를 검색하려면 어떻게 해야 합니까?

Patricia Arquette
풀어 주다: 2025-01-24 01:42:41
원래의
601명이 탐색했습니다.

How Can I Retrieve Data from Multiple Tables Using SQL Queries?

SQL 다중 테이블 데이터 쿼리 가이드

소개

이 가이드에서는 데이터베이스의 여러 테이블에서 데이터를 검색하는 SQL의 다양한 방법을 소개하고 복잡한 데이터 분석 및 보고서 생성을 지원합니다.

연결하고 단결

Join은 공통 열을 기반으로 여러 테이블의 행을 결합하여 단일 결과 집합을 만드는 데 사용됩니다. 세 가지 주요 연결 유형이 있습니다:

  • 내부 조인: 두 테이블 모두에서 일치하는 행만 반환합니다.
  • 왼쪽 외부 조인: 왼쪽 테이블의 모든 행과 오른쪽 테이블의 일치하는 행만 반환합니다.
  • 오른쪽 외부 조인: 오른쪽 테이블의 모든 행과 왼쪽 테이블의 일치하는 행만 반환합니다.

Unions 여러 쿼리의 결과를 단일 결과 세트로 결합합니다. 조인과 유사하지만 일치를 위해 공통 열을 사용하지 않습니다. 조인을 사용하면 구조가 다른 테이블의 데이터를 병합하거나 중복 행을 제거할 수 있습니다.

하위 쿼리

하위 쿼리는 기본 쿼리에서 검색된 데이터를 필터링하거나 수정하는 데 사용되는 쿼리 내의 쿼리입니다. 괄호로 묶여 있으며 WHERE, HAVING 또는 FROM 절에서 사용할 수 있습니다.

데카르트 곱 연결(악몽의 시작!)

데카르트 곱 조인은 테이블 조인 시 조인 조건이 지정되지 않은 경우 발생합니다. 이로 인해 불필요한 행이 많아지고 성능이 저하될 수 있습니다. 데카르트 곱 조인을 방지하려면 항상 조인 조건을 지정해야 합니다.

FROM 절의 하위 쿼리

FROM 절에 포함된 하위 쿼리를 사용하면 해당 하위 쿼리의 결과 집합을 메인 쿼리의 테이블로 사용할 수 있습니다. 이는 복잡한 데이터 변환이나 중첩 쿼리를 단순화하는 데 유용합니다.

고급 팁 컬렉션

계산된 열: 수학 연산이나 함수를 사용하여 쿼리에서 새 열을 만듭니다. CASE 문: 논리식을 사용하여 지정된 조건에 따라 다른 값을 선택합니다. OVER() 함수: 파티션 내의 행 그룹에 집계 함수를 적용합니다. 임시 테이블: 중간 결과를 저장할 임시 테이블을 생성하여 원본 테이블을 수정하지 않고도 복잡한 데이터 변환이 가능합니다. 파생 테이블: 임시 테이블과 유사하지만 쿼리에서 인라인으로 생성됩니다.

연계와 결합의 실천

예 1: Toyota와 BMW에서 제조한 자동차의 이름과 모델을 검색합니다.

<code class="language-sql">SELECT
    cars.model,
    brands.brand
FROM
    cars
JOIN
    brands
    ON cars.brand = brands.id
WHERE
    brands.brand IN ('Toyota', 'BMW');</code>
로그인 후 복사

예 2: 스포츠카나 사륜구동 자동차의 이름과 색상을 검색하세요.

<code class="language-sql">SELECT
    cars.model,
    colors.color
FROM
    cars
JOIN
    models
    ON cars.model = models.id
JOIN
    colors
    ON cars.color = colors.id
WHERE
    models.model IN ('Sports', '4WD');</code>
로그인 후 복사

예 3: 인벤토리에 자동차가 없더라도 왼쪽 외부 조인을 사용하여 모든 브랜드를 검색합니다.

<code class="language-sql">SELECT
    brands.brand
FROM
    brands
LEFT JOIN
    cars
    ON brands.id = cars.brand;</code>
로그인 후 복사

결론

조인, 유니온 및 기타 고급 SQL 기술을 익히면 여러 테이블에서 데이터를 효율적으로 검색하고 복잡한 보고서를 생성할 수 있습니다. 이는 데이터 분석가, 데이터 과학자, 데이터베이스 관리자에게 필수적인 기술입니다.

위 내용은 SQL 쿼리를 사용하여 여러 테이블에서 데이터를 검색하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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