> 데이터 베이스 > MySQL 튜토리얼 > 조인을 사용하여 SQL에서 최소 값으로 별개의 행을 찾는 방법은 무엇입니까?

조인을 사용하여 SQL에서 최소 값으로 별개의 행을 찾는 방법은 무엇입니까?

DDD
풀어 주다: 2025-01-24 08:21:09
원래의
322명이 탐색했습니다.

How to Find Distinct Rows with Minimum Values in SQL Using Joins?

SQL 쿼리 최적화: 최소값으로 고유 행 검색

이 가이드에서는 특정 열에서 최소값이 포함된 고유한 행을 추출하는 효율적인 SQL 기술을 보여줍니다. 이는 그룹화된 데이터를 처리할 때 종종 필요하며 조인과 필터링의 조합이 필요합니다.

다음 샘플 테이블을 고려하세요.

<code class="language-sql">id  game   point
1    x      5
1    z      4
2    y      6
3    x      2
3    y      5
3    z      8</code>
로그인 후 복사

목표는 각 고유 id에 대해 pointgame를 검색하여 해당 게임의 최소 point 값을 표시하는 것입니다. 예상 결과 세트는 다음과 같습니다.

<code class="language-sql">id  game   point
1    z      4
2    y      6
3    x      2</code>
로그인 후 복사

다음 SQL 쿼리를 사용하면 됩니다.

<code class="language-sql">SELECT tbl.*
FROM TableName tbl
INNER JOIN (
    SELECT game, MIN(point) AS min_point
    FROM TableName
    GROUP BY game
) AS tbl1 ON tbl1.game = tbl.game AND tbl1.min_point = tbl.point;</code>
로그인 후 복사

다음은 검색어 분석입니다.

  • 내부 조인: TableName(별칭 tbl)과 하위 쿼리(별명 tbl1)의 결과를 효율적으로 결합합니다.
  • 하위 쿼리: point를 사용하여 각 고유 game에 대한 최소 MIN(point)를 계산하고 결과를 game별로 그룹화합니다. 결과는 game 및 해당 최소값 point이 포함된 테이블입니다.
  • ON 절: 조인 조건은 기본 테이블과 하위 쿼리 사이에서 gamepoint이 일치하는 행만 포함되도록 합니다. 이는 각 point.game에 대해 최소
  • 이 있는 행을 정확하게 선택합니다.

이 최적화된 쿼리는 불필요한 복잡성을 피하고 원하는 결과를 직접 검색합니다. 대체 접근 방식보다 더 간결하고 빠른 솔루션입니다.

위 내용은 조인을 사용하여 SQL에서 최소 값으로 별개의 행을 찾는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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