4.6.3 内表数据处理

4.6.3 内表数据处理

4.6.3.1 初始化表

4.6.3.2 INSERT增加内表数据

INSERT可以按内表的具体字段向表中插入一行或多行数据。

逐行填充内表情况:

使用条件:要在内表现有行之前插入新行时,请用INSERT语句。

语法结构:

INSERT [ <wa> INTO | INITIAL LINE INTO ] <itab> [ INDEX <idx> ].

将内表内容复制到另外一个内表中情况:

使用条件:要将内表行插入另外一个内表中,使用INSERT语句。

语法结构:

INSERT LINES OF <itab1> [ FROM <n1> ] [ TO <n2> ] INTO <itab2> [ INDEX <idx> ].

注意:以上为插入内表

4.6.3.3 APPEND增加内表数据

APPEND语句用于向现有内表增加单个行或多个行。

逐行填充内表情况:

使用条件:要将内表仅用于存储数据,出于性能方面的考虑,使用APPEND

语法结构:

APPEND [ <wa> TO | INITIAL LINE TO ] <itab>.

将内表内容复制到另外一个内表中情况:

使用条件:要将内表行附加到另外一个内表中,使用APPEND语句。

语法结构:

APPEND LINES OF <itab1> [ FROM <n1> ] [ TO <n2> ] TO <itab2>.

注意:以上为附加内表行

4.6.3.4 COLLECT增加内表数据

逐行填充内表情况:

使用条件:要计算数字字段之和或要确保内表中没有出现重复条目,使用COLLECT语句。

语法结构:

COLLECT [ <wa> INTO ] <itab>.

4.6.3.5 MOVE增加内表数据

将内表内容复制到另外一个内表中情况:

使用条件:要将内表条目内容复制到另一个内表中,并覆盖该目标表格,使用MOVE语句。

语法结构1:

MOVE < itab1> TO <itab2>.

语法结构2:

< itab2> = <itab1>.

注意:以上为复制内表

4.6.3.6 Open SQL增加内表数据

通过Open SQL将数据表中的数据按条件查询后放入内表中,从而增加内表数据。

语法结构:

SELECTINTO TABLE <itab>.

SELECTAPPENDING TABLE <itab>.

4.6.3.7 MODIFY更改数据

MODIFY 直接修改内表数据,按内表位置或者具体内表字段值相等条件修改内表数据。

语法结构:

MODIFY itab [ FROM wa ] [ INDEX idx ] [ TRANSPORTING f1…fn ] WHERE cond.

4.6.3.8 DELET删除数据

DELET删除内表数据。

情形1:按具体值删除

语法结构:

DELETE TABLE itab WITH TABLE KEY k1=v1…kn=vn.

情形2:参考其他内表值删除

语法结构:

DELETE TABLE itab [ FROM wa].

情形3:删除具体行数据

语法结构:

DELETE itab INDEX idx.

情形4:删除具体行数范围间数据

语法结构:

DELETE itab FROM idx1 TO idx2.

情形5:删除重复数据,执行此条件前必须先排序

语法结构:

DELETE ADJACENT DUPLICATES FROM itab.

4.6.3.9 READ读取数据

READ语句依据具体行数 或 字段值等条件读取某一个内表数据。

语法结构:

READ TABLE itab FROM wa.

READ TABLE itab WITH [ TABLE ] KEY k1=v1…kn=vn [ BINARY SEARCH ].

READ TABLE itab INDEX i.

4.6.3.9 LOOP读取数据

LOOP循环常用于实现内表数据的循环读取和操作。

语法结构:

LOOP AT itab

   WRITE: itab.

ENDLOOP.

4.6.3.10 SORT排序

对内表进行排序,可以指定具体的排序字段,排序方式(升序或降序)。

语法结构:

SORT itab [ BY f1 f2… fn ] [ ASCENDING / DESCENDING ]

注意:f2为指定的字段,ASCENDING-升序,DESCENDING-降序

4.6.3.11 COLLECT汇总

将内表中相同的字段合并,若有类型为I的字段,则将其值汇总求和。

语法结构:

COLLECT [ wa INTO ] itab.

2021年9月10日 写于芜湖

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值