2011-01-06 4 views
0

oracle sql developer를 사용하고 있는데 열이 최대 값을 갖는 열의 최대 값을 어떻게 쿼리 할 수 ​​있는지 궁금합니다. 예를 들어최대 값을 갖는 pl/sql의 최대 값을 찾으십시오

:

모양
평방
평방
평방
삼각형


내가 최대 (모양)을 선택합니까

, 그것은 단지 정사각형이긴하지만 원형이 아니라도 thoug h는 모두 최대 값입니다.

+0

최대 무엇입니까? 문자열? 다른 컬럼에도 측정 값이 있습니까? –

+0

숫자가 있지만 to_char을 사용하여 변환됩니다. – Jack

+0

원하는대로 연결이 끊어졌습니다. 두 개의 동일한 최대 값이있는 경우 고유하지 않더라도 여전히 최대 값입니다. 어쩌면 귀하의 쿼리는 '어떤 셰이프가 최대 값을 공유합니까?' 대답을하기 전에 먼저 질문을 공식화해야합니다. –

답변

0

는 가장 좋은 방법은 아니지만, 유 시도 할 수 있습니다 :

SELECT * 
FROM (SELECT a.*, 
       Rank() OVER(PARTITION BY shapes ORDER BY sm DESC) rnk 
     FROM (SELECT shapes, 
         SUM(1) OVER(PARTITION BY shapes ORDER BY shapes) sm 
       FROM shapes_table) a) 
WHERE rnk = 1 
0
select Shapes from TableName 
group by Shapes 
having COUNT(*) = (
select top 1 COUNT(*) from TableName 
group by Shapes order by Shapes desc) 

이 쿼리는 최대 시간에 대한 해당 테이블에 반복 모든 모양을 제공 할 것입니다. (이것은 내가 귀하의 질문에서 얻은 것입니다.)

관련 문제