ABAP 获取内表行数与SQL直接获取数据的行数

一、干货
1 读取内表行数两种方法:

1  lt_sflight为内表,lv_line为行数值
   DESCRIBE TABLE lt_sflight LINES DATA(lv_line).
   
  "2 效果与第一种一样
  DATA(lv_line2) = lines( lt_sflight ).

2 读取底表数据行数方法:

"查询航班表中按照carrid分组的行数 
SELECT
  carrid ,
  COUNT( carrid ) AS line3
FROM sflight
GROUP BY carrid
INTO TABLE @DATA(lt_table) .

二、举个例子

1.首先,我们先去SE16N 查看sflight 行班表中承运方为:AA的数据有六条,我们把它查询出来,放在内表里面,然后使用我们上面的语句得到内表的行数。然后用SQL语句进行分类查询条数。在这里插入图片描述
2.例子的全部代码

"查询航班表的承运方为AA的数据"
SELECT
     *
FROM sflight
WHERE carrid = 'AA'
INTO TABLE @DATA(lt_sflight) .

"获取内表的行数,把数值放在LV_LINE"
DESCRIBE TABLE lt_sflight LINES DATA(lv_line).
WRITE:'航班表AA的行数line:' && lv_line.

"7.4新语法,获取内表行数的值"
DATA(lv_line2) = lines( lt_sflight ).
WRITE:  / '航班表的AA行数line2:' &&  lv_line2  .


"使用SQL语句获取行数"
SELECT
  carrid ,
  COUNT( carrid ) AS line3
FROM sflight
GROUP BY carrid
INTO TABLE @DATA(lt_table) .

cl_demo_output=>display( lt_table )."快速窗口输出结果

三、例子的结果
获取内表行数的输出结果
在这里插入图片描述
SQL语句得到分类行数
在这里插入图片描述

好啦 今天的小知识就分享到这里!
分享使我快乐,我是寒武青锋。
在这里插入图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值