order by절 질문드립니다. 0 2 1,558

by visca구루비 [SQL Query] 쿼리문 서브쿼리 [2016.03.17 10:06:43]


안녕하세요. 작년 11월에 입사한 신입입니다.

 

쿼리문을 작성중에 group by로 묶어서 테이블을 만든다음

가장 최신의 값 1개만 가져와야 하는 상황이 생겼습니다.

 

select a, b, c, d from 테이블
          group by c, d, a, b
          having c = '조건' 
          order by a desc

이렇게 작성하였습니다.

a(시간)으로 최근 입력값으로 정렬하는 쿼리 입니다.

이 상태에서 제일 위에 있는 rownum = 1 인 값만 가져오고 싶은데 어떻게 하나요??

by swlee [2016.03.17 10:21:52]
select * 
   from (
        select a,b,c,d,row_number() over(order by a desc) rn
          from 테이블
        where c = 조건)
where rn = 1

 


by visca구루비 [2016.03.17 10:26:58]

답변 감사합니다~~

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입