한 테이블에서 여러조건으로 데이터를 취득하려고 합니다만, 지식이
짧은 관계로 엄청 혼나고 있습니다...
테이블의 구성을 보면, 아래와 같이 되어있습니다.
TABLE NAME : AAA
( 날짜를 제외한 모든 항목이 CHAR 형식입니다)
NO STI ZKG WDAY FLG BAN EXP DASI KUBUN IDAY
--------------------------------------------------------------------------------
TT917 777 1 2005-06-01 2 3 1 1 2004-07-20-00.00.00.000000
TT917 777 1 2005-01-01 3 1 1 1 2004-07-20-00.00.00.000000
TT917 777 1 2004-12-01 3 1 1 1 2004-07-20-00.00.00.000000
TT917 567 1 2014-09-02 3 8 1 1 2099-01-01-00.00.00.000000
TT917 567 1 2014-09-02 3 1 1 1 2004-07-20-00.00.00.000000
TT917 567 1 2008-08-01 3 1 1 1 2099-02-01-00.00.00.000000
TT917 666 1 2006-03-03 3 5 0 1 2004-08-11-00.00.00.000000
PRIMARY_KEY : NO, STI ,ZKG,WDAY,KUBUN IDAY(순서대로)
===============================================================================
조건으로는
1. 최대의 WDAY 을 구해야합니다. 그 조건으로는 FLG = 3 이어야하고
DASI =1 인 최대날짜() 를 구해야합니다.
2. 만약 최대의 날짜(WDAY) 를 구할수 있다면 그 날짜에 상응하는
BAN 을 구해야합니다. 단, WDAY 가 중복으로 존재가 하면 KUBUN IDAY 가
최신의 날짜에 상응하는 BAN 을 구해야합니다.
3. FLG = 3 이어야하고 DASI =1 이고 EXP 가 1 의 최대의 날짜(WDAY)
를 구해야 합니다.
열을 하나 만들어서 해야 될듯 싶어요.. 넘 어려워서... ㅠ. ㅠ
조건을 하나씩 걸어서 해보면 언제나 두 값이 나와 버립니다.
결과치
--------------------------------------------------------------
NO STI ZKG WDAY FLG BAN EXP DASI KUBUN IDAY
TT917 777 1 2005-01-01 3 1 1 1
2004-07-20-00.00.00.0000002005-06-01
TT917 567 1 2014-09-02 3 8 1 1
2099-01-01-00.00.00.0000002014-09-02
TT917 666 1 2006-03-03 3 5 0 1 2004-08-11-00.00.00.000000
2006-03-03
-------------------------------------------------------------------
정녕 이게 쿼리를 날려 가능 하단말입니까??
WDAY2 가 안될수도 있는거 같은데요... 제 생각엔 .... 논리상으론
가능 하다고 하는데...
만약 WDAY2 가 안나올수가 있다면 어떻게 해야 할까요??
이걸로 벌써 2 주일이 넘어서고 있습니다.
고수님들의 절실한 도움을 원하는 초심자가....
|