초보입니다.
다음과 같은 쿼리가 있는데, 문제는 A.IO_INVOICE_NO(송장번호)가
작년 것과 같은 것들이
들어옵니다. 그래서 결국 WHERE 절에 임시방편으로 ENT_DT(입고일자)
>= '20050100'
을 넣었습니다만 내년에 또 데이터가 꼬일건 뻔하거든요.. 그래서
ENT_DT 가 최근인 데이터들만
빼오려고 합니다. 가장 최근의 송장번호에 관련된 데이터만
제품마스터(DL_PRDMST)에서 빼올
수 있게 수정 좀 부탁드립니다.. PK는 PRD_NO 입니다...
SELECT A.PRD_NO "PRD_NO",
A.PRD_CD "PRD_CD",
A.ENTER_DT "ENTER_DT",
A.ENTER_TM "ENTER_TM",
A.O_INVOICE_NO "O_INVOICE_NO",
'' "CHK1",
'' "SELECTED",
B.CAR_NO "CAR_NO",
B.CAR_ENO "CAR_ENO",
C.DEST_NM "F_DEST_NM",
D.DEST_NM "T_DEST_NM",
E.CUST_NM "CUST_NM",
F.COMMON_NM "PRD_NM",
G.CUST_NM "BILL_TO_NM",
F.COMMON_SUB_CD "COMMON_SUB_CD",
'' "ADD_GBN",
B.MAIN_DRIVER_NO "MAIN_DRIVER_NO",
B.MAIN_DRIVER_NM "MAIN_DRIVER_NM",
B.SPAIR_DRIVER_NO "SPAIR_DRIVER_NO",
B.SPAIR_DRIVER_NM "SPAIR_DRIVER_NM"
FROM DL_PRDMST A
left outer join DL_CAR B on A.ENTER_CAR_CO_GBN =
B.TRANS_CO_GBN
AND A.ENTER_CAR_CO_CD = B.TRANS_CO_CD AND A.ENTER_CAR_SNO =
B.CAR_SNO
left outer join DL_DESTMST C on A.F_DEST_CD = C.DEST_CD
left outer join DL_DESTMST D on A.T_DEST_CD = D.DEST_CD
left outer join DL_CUST E on A.PCUST_NO = E.CUST_NO
left outer join DL_COMMON F on A.PRD_CD = F.COMMON_CD
left outer join DL_CUST G on A.BILL_TO_CD = G.CUST_NO
WHERE F.COMMON_GBN = 'J' AND
A.ENTER_DT >= '20050100' AND --> 임시방편의 조건..
A.I_INVOICE_NO = :v_invoice_no;
|