COLLECT和APPEND之间的区别

2020-08-20 14:34发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)朋友, 我想要COLLECT和A...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


朋友,

我想要COLLECT和APPEND语句之间的基本区别

先谢谢

@jay

11条回答
Nir深蓝
2020-08-20 15:18 .采纳回答

嗨,

APPEND

只需在内部表的末尾添加记录...。

COLLECT: COLLECT用于创建唯一的或压缩的数据集。 关键字段是内部表itab的默认关键字段。

如果仅使用COLLECT来填充内部表,则COLLECT确保内部表不包含两个具有相同默认键字段的条目。

如果内部表除其默认键字段之外还包含数字字段,如果内部表已经包含具有相同键字段的条目,则这些数字字段的内容将加在一起。

如果使用COLLECT处理的内部表的默认键为空,则所有值都将累加到第一行表中。

如果指定wa INTO,则要处理的条目将从显式指定的工作区wa中获取。 如果不是,它来自内部表itab的标题行。

在COLLECT之后,系统字段SY-TABIX包含-现有或新表条目的索引,其默认键字段与要处理的条目的键字段匹配。

COLLECT可以创建唯一的或压缩的数据集,因此应精确地用于此目的。 如果唯一性或压缩不重要,或者在您的特定任务中不可能出现两个具有相同默认键字段值的值,则应改用APPEND。 但是,对于同样有效的唯一数据集或压缩数据集,可以使用COLLECT语句。

如果使用COLLECT处理表,则还应该使用COLLECT进行填充。 只有这样做,才能保证内部表实际上是唯一的或经过压缩的,如上所述,并且COLLECT将非常有效地运行。

如果将COLLECT与明确指定的工作区一起使用,则它必须与内部表的行类型兼容。

干杯,

Simha。

一周热门 更多>