2012-06-27 2 views
1

데이터 목록을 반환하는 선택 쿼리가 있으며 최저 수준의 모든 행을 반환해야합니다.가장 낮은 값의 행을 여러 개 반환하는 중

SELECT code, level 
FROM table 
ORDER BY level 

를 들어
code | level 
-----+------ 
A01 | 3 
B56 | 3 
J33 | 4 
J35 | 4 
K56 | 4 

나는 그것이

A01 | 3 
B56 | 3 
내가 MIN(level)를 사용하여 시도

그러나이 만 것이 경우에, 그래서 가장 낮은 수준의 값으로 모든 결과를 반환하고 싶습니다 상단 행을 반환합니다. 쿨

답변

4
SELECT TOP 1 WITH TIES code, level 
FROM table 
ORDER BY level 
+0

한 2012 SQL에 ties' 새와'입니까? – Andomar

+0

@Andomar - 아니요 [적어도 2000] 이후로는 없었습니다 (http://msdn.microsoft.com/en-us/library/aa259187(v=sql.80) .aspx) –

+0

감사합니다! 특히 쿼리가 더욱 복잡해지면 매우 쉬운 솔루션입니다! – Elliott

1
SELECT * 
FROM mytable 
WHERE level IN (SELECT Min(level) 
       FROM mytable) 
order by level 
관련 문제