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 2475 게시물 읽기
No. 2475
너무 힘드네요. 고수분들 쿼리 도움 부탁드리겠습니다.
작성자
헤헤헤(hehehe2002)
작성일
2009-05-07 21:43
조회수
6,898

KEY   |FLAG    | DATE          | RNK          KEY     |FLAG    | DATE          | RNK

A       | 1         |19980512       | 1                 A       | 1         |19980512       | 1 

A       | 1         |20010226       | 2                 A       | 2         |20010329       | 3 

A       | 2         |20010329       | 3                 B       | 1         |19980630       | 1 

B       | 1         |19980630       | 1                 B       | 2         |20010816       | 2 

B       | 2         |20010816       | 2                 C       | 1         |20010226       | 1 

C       | 1         |20010226       | 1                 C       | 2         |20010302       | 2 

C       | 2         |20010302       | 2                 C       | 1         |20010326       | 3 

C       | 1         |20010326       | 3                 C       | 2         |20010406       | 5 

C       | 1         |20010404       | 4                 C       | 1         |20010430       | 6 

C       | 2         |20010406       | 5  =======>  C       | 2         |20010720       | 7 

C       | 1         |20010430       | 6                 D       | 1         |19990531       | 1 

C       | 2         |20010720       | 7                 D       | 2         |20010329       | 3 

D       | 1         |19990531       | 1                 E       | 1         |20011030       | 1 

D       | 1         |20000828       | 2                 E       | 2         |20020122       | 2 

D       | 2         |20010329       | 3                 E       | 1         |20010909       | 1 

E       | 1         |20011030       | 1                 E       | 2         |20020328       | 6 

E       | 2         |20020122       | 2

E       | 1         |20010909       | 1

E       | 1         |20010910       | 2

E       | 1         |20011109       | 3

E       | 2         |20011109       | 3

E       | 2         |20011231       | 5

E       | 2         |20020328       | 6



위의데이터는 KEY로 파티션을 나눈다음 DATE에 따라 정렬 및 랭크를 매긴겁니다.


그런데 KEY별로 위에서부터 아래로 내려갈때 FLAG 값이 1이 연속되면 이중에서 MIN(DATE) 값을 취하고


FLAG값이 2가 연속되면 MAX(DATE)값을 취해야 합니다.


결과적으로는 FLAG가 1와 2가 하나씩 번갈아 오는겁니다.


그래서 오른쪽과 같이 데이터가 나오면 됩니다.


몇시간을 머리 싸메도 너무 힘드네요.


RANK 컬럼 값은 그냥 정렬을 위해 만든거니 무시하셔도 됩니다.


고수분들 도움 부탁드리겠습니다. ㅠㅠ

[Top]
No.
제목
작성자
작성일
조회
2479ASE Isql 설정 도와주세요
무지렁이
2009-05-11
7440
2478궁금합니다. [1]
이장훈
2009-05-11
6581
2476어디가 문제일까요?(초보) [2]
지젤
2009-05-08
7142
2475너무 힘드네요. 고수분들 쿼리 도움 부탁드리겠습니다.
헤헤헤
2009-05-07
6898
2474temp table index 관련 문의 입니다.
karerina
2009-05-06
7162
2471db복사 어떻게 하면 잘했다 하지요? [1]
노근용
2009-04-30
7301
2470오류메세지"NT operating system error 10038 in module" [1]
김희찬
2009-04-29
7517
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.045초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다