database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
ㆍSybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Sybase Q&A 2339 게시물 읽기
No. 2339
초보 쿼리에 대한 조언 부탁드립니다
작성자
쉬리다(shlee28)
작성일
2008-11-11 23:00
조회수
8,962

 


원시데이터 

      구분         날짜

  ===========================

      aaa        9월 10일

      aaa       10월  3일

      aaa       10월 10일

      aaa       11월  4일

      bbb       2월  11일

      bbb       4월   8일

  ==========================

    

       

  => 원하는 출력결과 


   구분    날짜

 ==========================

    aaa   10월 10일

    bbb   2월   11일

 ==========================


  구분으로 group by해서 max -1 번째 값을 추출하고 싶은데

  도저히 생각이 안나네요


  고수님들의 아낌없는 조언 부탁 드립니다.   

이 글에 대한 댓글이 총 1건 있습니다.

A는 각 항목(구분, 날짜)의 group by에 대한 rank로 순위컬럼을 붙인다.

B는 A에 대해 구분에 대해 group by에 대한 rank의 min 값을 구한다.


그러면 각 구분(aaa, bbb)에 대한 날짜별로 순위가 구해집니다.


A와 B를 조인하여 A.rank에 B.min(rank)를 뺀값 +1 이 구분별 순위가 정해지는데 

where 절로 2(두번째 맥스값)인값을 걸면 됩니다.



select  aaa - min() + 1 as 순위

(

A:

select 구분, 날짜, rank(구분, 날짜 desc) aaa

from

group by 구분, 날짜


     join


B:

select 구분, min()

from A

group by 구분

)

where 순위 = 2

김성한(qlwb23)님이 2008-11-12 11:42에 작성한 댓글입니다.
이 댓글은 2008-11-12 11:44에 마지막으로 수정되었습니다.
[Top]
No.
제목
작성자
작성일
조회
2343사이베이스를 파악하기위한 추천서적이 있을까요? [3]
카즈머스
2008-11-14
8257
2342특정 파일에 헤더추가하는 방법 문의드립니다. [1]
칭칭
2008-11-13
7848
2341delete 할때.. exists [1]
손병기
2008-11-12
8726
2339초보 쿼리에 대한 조언 부탁드립니다 [1]
쉬리다
2008-11-11
8962
2338Sybase ASE의 isql 에서 sql 파일을 실행시키는 방법 [1]
호잇
2008-11-10
10873
2337ASE ISQL 프로그램 사용시 에러가 납니다.
김범한
2008-11-06
8301
2336사이베이스 db 파일을 엑셀이나텍스트파일로 변환하고싶어요 [1]
김우성
2008-11-05
8769
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다