2014-07-15 3 views
0

각 x 값의 최대 값을 얻는 방법으로 테이블을 쿼리하는 방법이 있습니까? 마찬가지로 ... 테이블에 두 개의 열이 있다고 가정합니다. x와 y라고 부르세요. 각 X에 대해 MAX (Y)를 구하는 방법이 있습니까? x는각 고유 X 값의 SQL 최대 값 Y

X    Y 
    1    6 
    1    7 
    1    8 
    1    8 
    1    8 
    1    9 
    2    5 
    2    5 
    2    5 
    2    4 
    2    5 
    3    3 
    3    4 
    3    6 
    4    2 
    4    4 
    4    5 
    5    2 
    5    1 
    5    5 

를 반복하는 경우, 쿼리 등 X = 2, 여기서 x 1, 가장 높은 y 값의 가장 높은 y 값을 얻을 것입니다 그래서?

답변

2

구분해야하는 열을 그룹화하면됩니다.

select X, MAX(Y) 
from my_table 
group by X 
order by X; 

이 각각의 X 값에 대한 MAX Y를 가져옵니다이 시도 그런 max() 같은 모든 집계 함수는 각 그룹

select x, max(y) as max_y 
from your_table 
group by x