我有一个包含BUKRS,GJAHR,MONAT的表,我想选择MAX GJAHR和MONAT如下:
SELECT MAX( concat( gjahr, monat ) ) AS year_monat
FROM zfiou_percentage
INTO data(lv_year_month)
WHERE bukrs = '5555' AND
concat( gjahr, monat ) <= '202001'
GROUP BY year_monat.
所以表中有:
BUKRS GJAHR MONAT
5555 2019 09
5555 2019 10
5555 2019 11
5555 2020 02
我如何获得5555 2019 11
行?
如果无法正常运行或没有所需的ABAP版本,则可以尝试以下操作。我没有亲自尝试过它,而是伪代码,但是应该可以。有关更多信息,请阅读subqueries。
DATA lt_result TYPE TABLE OF zfiou_percentage.
SELECT *
FROM zfiou_percentage
INTO TABLE lt_result
WHERE bukrs = gs_selections-p_bukrs
AND gjahr >= ALL ( SELECT gjahr
FROM zfiou_percentage )
AND monat >= ALL ( SELECT monat
FROM zfiou_percentage
WHERE gjahr >= ALL ( SELECT gjahr
FROM zfiou_percentage ) ).
说明: