MySQL에서 특정 열의 그룹별 최대값을 보유하는 행을 찾는 방법을 이해합시다 -
MySQL에서 특정 열의 그룹별 최대값을 포함하는 행을 찾는 구문은 다음과 같습니다. -
SELECT colName1, colName2, colName3 FROM tableName s1 WHERE colName3=(SELECT MAX(s2. colName3) FROM tableName s2 WHERE s1. colName1= s2. colName1) ORDER BY colName1;
다음 PRODUCT 테이블이 있다고 가정해 보겠습니다. −
<제품>
+---------+----------+--------+ | Article | Warehouse| Price | +---------+----------+--------+ | 1 | North | 255.50 | | 1 | North | 256.05 | | 2 | South | 90.50 | | 3 | East | 120.50 | | 3 | East | 123.10 | | 3 | East | 122.10 | +---------+----------+--------|
다음은 쿼리입니다 -
쿼리
SELECT Article, Warehouse, Price FROM Product p1 WHERE Price=(SELECT MAX(p2. Price) FROM Product p2 WHERE p1. Article= p2. Article) ORDER BY Article;
출력
+-------------+----------------+------------+ | Article | Warehouse | Price | +-------------+----------------+------------+ | 0001 | North | 256.05 | | 0002 | South | 90.50 | | 0003 | East | 123.10 | +-------------+----------------+------------+
위 쿼리는 상관 하위 쿼리를 사용했습니다.