집 >데이터 베이스 >MySQL 튜토리얼 >MySQL에서 각 딜러의 최소값이 있는 행을 검색하는 방법은 무엇입니까?
MySQL: 각 딜러에 대해 가장 낮은 값을 가진 행 검색
당면 작업에는 각 개별 항목에 대해 가장 낮은 값을 가진 행을 가져오는 것이 포함됩니다. ID, 이름, 값 및 같은 열이 포함된 데이터베이스 테이블의 딜러
전략:
이 문제를 해결하기 위해 아래 두 가지 솔루션이 제시됩니다.
솔루션 1:
SELECT t1.* FROM your_table t1 JOIN ( SELECT MIN(value) AS min_value, dealer FROM your_table GROUP BY dealer ) AS t2 ON t1.dealer = t2.dealer AND t1.value = t2.min_value
이 솔루션은 먼저 MIN()을 사용하여 각 딜러의 최소값을 찾는 방식으로 작동합니다. 그리고 GROUP BY. 그런 다음 딜러 열과 min_value 열에서 INNER JOIN을 사용하여 이 결과를 원본 테이블과 조인합니다.
해결책 2(권장):
SELECT t1.* FROM your_table t1 LEFT JOIN your_table t2 ON t1.dealer = t2.dealer AND t1.value > t2.value WHERE t2.value IS NULL
해결책 2에서는 LEFT JOIN을 사용하여 동일한 딜러에 대해 더 높은 값을 갖는 행이 없는 행을 찾습니다. 결과적으로, 각 딜러에 대해 가장 낮은 값을 가진 행을 생성합니다.
중요 참고:
Mysql 문서에는 이 특정 문제에 대한 전용 페이지가 있습니다: "Rows Holding the 특정 열의 그룹별 최대/최소". 추가 정보 및 대체 접근 방식은 이 페이지를 참조하세요.
위 내용은 MySQL에서 각 딜러의 최소값이 있는 행을 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!