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
운영게시판
최근게시물
Oracle Q&A 40617 게시물 읽기
No. 40617
최근 발령일을 가져올수 있을까요?
작성자
조기영(darkelf)
작성일
2014-11-21 17:17
조회수
6,214

발령일 | 구분

 2011.01.01 A

 2011.04.02 A

 2012.01.01 B

 2012.07.01 C

 2012.10.01 C

 2012.11.01 C

 2012.12.01 B

 2013.02.01 A

 2014.02.01 A   ==> 2013.02.01의 연속으로 판단해요

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

위와 같은 발령 정보중 A가 된 최근 발령일을 구하고 싶어요~ 답은 2013.02.01 이에요~\

가능할까요?

 

 

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

WITH t AS
(
SELECT '2011.01.01' dt, 'A' gb FROM dual
UNION ALL SELECT '2011.04.02', 'A' FROM dual
UNION ALL SELECT '2012.01.01', 'B' FROM dual
UNION ALL SELECT '2012.07.01', 'C' FROM dual
UNION ALL SELECT '2012.10.01', 'C' FROM dual
UNION ALL SELECT '2012.11.01', 'C' FROM dual
UNION ALL SELECT '2012.12.01', 'B' FROM dual
UNION ALL SELECT '2013.02.01', 'A' FROM dual
UNION ALL SELECT '2014.02.01', 'A' FROM dual
)
SELECT MAX(dt)
  FROM (SELECT dt, gb
             , DECODE(LAG(gb) OVER(ORDER BY dt), gb, 0, 1) flag
          FROM t
        )
 WHERE flag = 1
;

마농(manon94)님이 2014-11-21 18:20에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
40620수식표현 [2]
손동길
2014-11-24
6546
40619오라클에서 패스워드 변경 권한 부여하는 방법 있을까요? [1]
김광표
2014-11-24
7267
40618Oracle 서브쿼리를 Mysql 쿼리로 (rownum -> limit) [1]
개발자cheon
2014-11-24
6807
40617최근 발령일을 가져올수 있을까요? [1]
조기영
2014-11-21
6214
40616dos 배치파일에 sqlplus 명령어를 넣어서 실행후 [2]
한상원
2014-11-20
7662
40615alter table로 필드 자리수 수정후에 오류 [3]
한상원
2014-11-19
7266
40614초보의 쿼리 질문 [1]
권사마
2014-11-18
7371
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다