안녕하세요,, pl/sql로 프로시져를 하고 있는데,, 궁금 사항이 생겨서 질문 드립니다
일단 쿼리는
SELECT
A.CHANGE_NUMBER
,LPAD(ROWNUM,4,0) ------------------------------- seq 생성
,CASE WHEN CHANGE_OUT = A.ID THEN 'D' --------------------D OR A 입력
WHEN CHANGE_IN = A.ID THEN 'A' END
,I.ITEM_NUMBER AS P_ITEM_NUMBER
,sF_ITEM ( nSubIdx )
,B.ITEM_NUMBER AS C_ITEM_NUMBER
,SUBSTRB ( NVL(C.LABEL , F.TEXT ) ,1,40)
,''
,DECODE ( C.LABEL , NULL , B.QUANTITY , 1 ) AS QUANTITY
,( SELECT ENTRYVALUE FROM LISTENTRY L012 WHERE P.LIST05 = L012.ENTRYID AND L012.PARENTID = 2472782 AND L012.LANGID = 0 )
,DECODE ( CHANGE_OUT, 0, R.REV_NUMBER , '' )
FROM CHANGE A
,REV R
,ITEM I
,ITEM_P2P3 P
,BOM B
,REFDESIG C
,AGILE_FLEX F
WHERE A.CHANGE_NUMBER = mF_ECO_NO ( nMainLoopIdx )
AND I.ITEM_NUMBER = sF_ITEM ( nSubIdx )
AND B.CHANGE_OUT != B.CHANGE_IN
AND (B.CHANGE_IN = A.ID OR B.CHANGE_OUT=A.ID)
AND B.ITEM = R.ITEM
AND I.ID = R.ITEM
AND R.CHANGE = A.ID
AND B.ITEM_NUMBER = P.ITEM_NUMBER
AND B.ID = C.BOM(+)
AND B.ID = F.ROW_ID (+)
AND B.ITEM = F.ID (+)
AND F.ATTID(+) = '1036'
AND F.CLASS(+) = '10000'
이렇습니다,,,, 제가 하고 싶은 것은 쿼리의 빨간색으로 되어있는 부분중 D OR A 로 만들어주는 부분에서
저는 무조건 D 를 SEQ가 높게 하고 싶습니다
예를 들어 현재는 아래와 같이 D / A 순서가 뒤죽박죽으로 SEQ가 생성이 됩니다
홍길동 |
0001 |
A |
대학생 |
군인 |
김민호 |
0002 |
D |
고딩 |
중딩 |
김철수 |
0003 |
D |
초딩 |
중딩 |
안철수 |
0004 |
A |
대딩 |
고딩 |
|
|
|
|
|
이내용을 SELECT 할때 아래와 같이 D부터 SEQ를 입력하게 하고 싶은데 어떻게 변경해야 할까요?
김민호 |
0001 |
D |
고딩 |
김철수 |
0002 |
D |
초딩 |
홍길동 |
0003 |
A |
대학생 |
안철수 |
0004 |
A |
대딩 |
|
|
|
|
이렇게 하고 싶습니다
감사합니다
좋은 하루 되세요
|