2012-05-16 4 views
0

에서 나는 테이블과 같이 있습니다선택 예 기록은 표

id make model year 
1 chevy camaro 1969 
2 chevy camaro 1967 
3 ford mustang 1967 
4 chevy corvette 1984 
5 pontiac gto 1971 
6 pontiac grandam 1987 

내가 메이크업의 각 구별 값에 대해 하나의 행 (모든 열)를 포함하는 레코드를 반환합니다. 결과보기 :

1 chevy camaro 1969 
3 ford mustang 1967 
5 pontiac gto 1971 

순서는 중요하지 않습니다. 그것은 결정 론적 일 필요는 없습니다. 그래서 전체 테이블 내용을 개발자에게 보내지 않고도 여러 유스 케이스에 대한 예제 데이터를 쉽게 선택할 수 있습니다.

답변

2

MySQL의에서, 당신은 멀리로받을 수 있습니다 : 대부분의 다른 SQL DBMS와

SELECT id, make, model, year 
    FROM AnonymousTableAboutCars 
GROUP BY make, model; 

, 당신은 아마 할 것 :

SELECT id, make, model, year 
    FROM AnonymousTableAboutCars AS a 
    JOIN (SELECT MIN(id) 
      FROM AnonymousTableAboutCars 
     GROUP BY make, model 
     ) AS m 
    ON a.id = m.id; 

골재의 선택은 당신에게 달려있다 ; MAX는 유효하고 결정 론적 인 대안으로 떠오르고 있습니다.