오라클 -> sql로 변경 0 1 839

by 55 [SQL Query] [2020.11.17 16:04:20]


MAX(INFO_SN) KEEP (DENSE_RANK FIRST ORDER BY INFO_SN DESC)

 

오라클에서 이부분을 mssql 로 변경해주고싶은데 오라클을 1도 몰라 어렵네요ㅠㅠ

도움좀 부탁드립니다.

by 마농 [2020.11.17 16:24:07]

info_sn 의 역순으로 정렬 했을 때 가장 첫번째 info_sn 값을 가져오라는 뜻으로
Oracle 에서도 정렬항목과 조회항목이 다를 때 유용하게 사용할 수 있는 구문입니다.
그런데 여기서는 정렬항목과 조회항목이 같으므로, 불필요하게 KEEP 을 사용한 것으로 그냥 MAX 만 하면 됩니다.
- 변경전 : MAX(info_sn) KEEP (DENSE_RANK FIRST ORDER BY info_sn DESC)
- 변경후 : MAX(info_sn)
예)
- 가장 최근에 거래한 사람 구하기 : MAX(회원번호) KEEP (DENSE_RANK FIRST ORDER BY 거래일자 DESC)
- 가장 최근에 거래한 날짜 구하기 : MAX(거래일자) -- 굳이 KEEP 을 사용할 이유가 없음

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