ABAP S4 新语法 sql with 的用法demo

复制代码
REPORT demo_cte.

CLASS demo DEFINITION.
  PUBLIC SECTION.
    TYPES: BEGIN OF struct,
             carrname TYPE scarr-carrname,
             connid   TYPE spfli-connid,
             cityfrom TYPE spfli-cityfrom,
             cityto   TYPE spfli-cityto,
             cnt      TYPE int8,
           END OF struct.
    CLASS-DATA itab TYPE TABLE OF struct WITH EMPTY KEY.
    CLASS-METHODS main.
ENDCLASS.

CLASS demo IMPLEMENTATION.
  METHOD main.
    DATA carrid TYPE spfli-carrid VALUE 'LH'.
    cl_demo_input=>request( CHANGING field = carrid ).
    carrid = to_upper( carrid ).

    WITH
      +conns AS (
        SELECT carrname, connid, cityfrom, cityto
              FROM spfli
                JOIN scarr ON spfli~carrid = scarr~carrid
              WHERE spfli~carrid = @carrid ),
      +cnts AS (
        SELECT COUNT(*) AS cnt
               FROM +conns )
      SELECT *
             FROM +cnts
               CROSS JOIN +conns
             ORDER BY carrname, connid
             INTO CORRESPONDING FIELDS of TABLE @itab.

    cl_demo_output=>display( itab ).
  ENDMETHOD.
ENDCLASS.

START-OF-SELECTION.
  demo=>main( ).

上图代码输出结果:

看到结果输出很容易理解代码需要实现的效果了。

相关推荐
sinat_3751122621 小时前
abap excel上传
excel·上传·sap·abap
爱喝水的鱼丶5 天前
SAP-ABAP:全面破解SAP与第三方系统集成超时难题:从应急排查到根治方案
开发语言·sap·abap·接口集成·开发交流
乐乐82345 天前
处理大数据用游标 CURSOR
abap
燚㵘䲜6 天前
CL_GUI_FRONTEND_SERVICES常用method
abap
xlxxy_10 天前
abap 批量创建供应商
运维·开发语言·sap·abap·pp·mm
淋了一场太阳雨10 天前
ABAP 使用函数获取替代(Substitution)值
sap·abap·函数·替代·subsititution
爱喝水的鱼丶12 天前
SAP-ABAP:在SAP世界里与特殊字符“斗智斗勇”:一份来自实战的避坑指南
运维·服务器·数据库·学习·sap·abap·特殊字符
淋了一场太阳雨12 天前
SAP VOFM Material determination
sap·abap
goyeer14 天前
18.[SAP ABAP] 内表(Internal Table)
sap·abap
duangww16 天前
测试SAP的接口账号密码
abap