중복데이터는 처음 한번만 출력해주고 싶습니다. 0 1 196

by ymym [SQL Query] oracle [2019.05.15 13:20:41]


    sStr := ' SELECT SALE_DTE, CUST_NME, ITEM_NBR, SALE_QTY, SALE_PRC, SALE_AMT_TOT '#13+
             '  FROM MKT0TB015 A, MST0TB002 B     '#13+
             ' WHERE A.CUST_NBR = B. CUST_NBR     '#13+
             '   AND SALE_DTE BETWEEN :StartDate AND :EndDate    '#13;

 

SALE_DATE_DTE 그리고 CUST_NME는 중복데이터가 있으면 처음 한번만 출력해주고싶습니다.. 찾아봐도 이해가 안되네요ㅜㅜ 어떤식으로 해야하나요?

by 이준환 [2019.05.15 14:15:24]
SELECT
  DECODE(ROW_NUMBER()OVER(PARTITION BY SALE_DTE, CUST_NME ORDER BY 1), 1, SALE_DTE) AS SALE_DTE
, DECODE(ROW_NUMBER()OVER(PARTITION BY SALE_DTE, CUST_NME ORDER BY 1), 1, CUST_NME) AS CUST_NME
, ITEM_NBR, SALE_QTY, SALE_PRC, SALE_AMT_TOT
FROM MKT0TB015 A, MST0TB002 B
WHERE A.CUST_NBR = B. CUST_NBR
AND SALE_DTE BETWEEN :StartDate AND :EndDate
;

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입