1. 代码
-
此例在CDS Table Function基础上,演示使用WITH:SAP 02-AMDP Functions for CDS Table Functions
CLASS zamdp_demo_02 DEFINITION PUBLIC FINAL CREATE PUBLIC . PUBLIC SECTION. interfaces: IF_AMDP_MARKER_HDB. class-methods: GET_SPFLI_US for table function zamdp_cds_tabfunc_01. PROTECTED SECTION. PRIVATE SECTION. ENDCLASS. CLASS zamdp_demo_02 IMPLEMENTATION. method GET_SPFLI_US by database function for hdb language sqlscript options read-only using spfli sflight. return with sflight_tmp as ( select distinct carrid,connid from sflight where carrid = 'AA' and connid = '0017' ) select t2.MANDT, t1.CARRID, t1.CONNID, t2.COUNTRYFR, t2.CITYFROM, t2.AIRPFROM, t2.COUNTRYTO, t2.CITYTO, t2.AIRPTO, t2.FLTIME, t2.DEPTIME, t2.ARRTIME, t2.DISTANCE, t2.DISTID, t2.FLTYPE, t2.PERIOD from sflight_tmp as t1 left outer join spfli as t2 On t1.carrid = t2.carrid and t1.connid = t2.connid where t2.mandt = :ip_clnt --Use Table Function Parameter and t2.COUNTRYFR = :ip_COUNTRYFR; endmethod. ENDCLASS.
2. 结果展示
- 原例中,运行后结果
- 本例中,使用WITH 分句(数据使用做了二次筛选,比原例范围更精确)