SAP HANA SQL WITH ROW_NUMBER
예제) 특정월 이후의 가장 최근 월 Data 구하기
with 절에 +를 사용
DATA: lv_bwkey LIKE t001w-bwkey VALUE '1000'.
DATA: iv_spmon TYPE spmon VALUE '202203',
it_matnr LIKE range_matnr OCCURS 0 WITH HEADER LINE.
DATA: BEGIN OF lt_mbew OCCURS 0,
matnr LIKE mbew-matnr,
bwtar LIKE mbew-bwtar,
salk3 LIKE mbew-salk3,
lbkum LIKE mbew-lbkum,
lfgja LIKE mbew-lfgja,
lfmon LIKE mbew-lfmon,
END OF lt_mbew.
DATA: lt_mbewh LIKE lt_mbew OCCURS 0 WITH HEADER LINE.
WITH
+mbewh AS (
SELECT matnr, salk3, lbkum, lfgja, lfmon,
ROW_NUMBER( ) OVER( PARTITION BY matnr
ORDER BY matnr, lfgja DESCENDING, lfmon DESCENDING ) AS rnum
FROM mbewh
WHERE bwkey EQ @lv_bwkey
AND matnr IN @it_matnr
AND bwtar EQ ' '
AND ( lfgja < @iv_spmon(4) OR
( lfgja EQ @iv_spmon(4) AND
lfmon <= @iv_spmon+4(2) ) )
ORDER BY matnr )
SELECT matnr, salk3, lbkum, lfgja, lfmon FROM +mbewh
WHERE rnum = 1
INTO CORRESPONDING FIELDS OF TABLE @lt_mbewh.
'만사가귀찮아' 카테고리의 다른 글
ABAP Excel Write (0) | 2022.05.31 |
---|---|
ALV Underline (1) | 2022.05.31 |
Shadow Stack 비활성화(2021.10.31) (0) | 2021.10.31 |
Oracle bind variable values (0) | 2018.10.01 |
Oracle Partition table - high_value 읽기 (0) | 2018.09.10 |