sort itab by matkl .
  delete adjacent duplicates from itab comparing  matkl.
uline at /1(70).

---------------------------------------------------------------------------

最近在使用abap delete duplicate时发现删除重复记录不完全。

只删除掉了部分重复记录。最后经过调试,没发现其它问题。于是再次研究delete duplicate语法

发现delete duplicate只删除相邻行的重复项,保留第一条记录,所以在对内表进行delete duplicate

操作时应该注意先对内表进行排序,然后再执行delete duplicate语句,即可将重复项完全删除。

排序注意点:升序 sort itab (ascending),降序 sort itab descending.

附:

ABAP delete duplicate的用法指南
DELETE ADJACENT DUPLICATE ENTRIES FROM <itab> 
                                  [COMPARING <f1> <f 2> ... 
                                             |ALL FIELDS].
删除相邻行的重复项,保留第一条记录
1、如果没有定义non-nuique键,并且在删除的时候没有指定条件,则将比较所有的字段;等同于比较
DELETE ADJACENT DUPLICATES FROM ITAB COMPARING ALL FIELDS
定义non-unique字段方式如下:
DATA ITAB LIKE STANDARD TABLE OF LINE
          WITH NON-UNIQUE KEY COL2.
2、如果有non-unique键,则在没有删除的比较条件时比较该key,删除相邻的重复项。
3、可以使用指定条件进行比较处理 COMPARING <f1> <f 2> ... ,此时,需要所有指定字段在相邻处相同,否则不会删除。

其他补充说明:
如果对比较的字段进行了事先的排序,则可以将所有该字段重复的行全部删除。
如果至少删除成功一条,则sy-subrc返回0,否则返回4.

ABAP delete的用法相关推荐

  1. 使用ABAP delete duplicate时遇到的问题

    最近在使用abap delete duplicate时发现删除重复记录不完全. 只删除掉了部分重复记录.最后经过调试,没发现其它问题.于是再次研究delete duplicate语法 发现delete ...

  2. ABAP—COLLECT的用法

    ABAP-COLLECT的用法     ABAP中COLLECT的用法: SAP中ABAP对内表插入数据的时候有3种:APPEND,COLLECT,INSERT. 要填充内表 ,既可逐行 添加数据, ...

  3. MySQL删除s表命令_SQLServer数据库sql语句中----删除表数据drop、truncate和delete的用法...

    本文主要向大家介绍了SQLServer数据库sql语句中----删除表数据drop.truncate和delete的用法,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助. 虽 ...

  4. c语言中delete函数用法,c中delete的用法

    c中delete的用法的用法你知道吗?下面小编就跟你们详细介绍下c中delete的用法的用法,希望对你们有用. c中delete的用法的用法如下: "new"是C++的一个关键字, ...

  5. ABAP COLLECT语句用法深入解析

    我们都知道collect语句,主要用于 报表 数据的合并计算的,简单理解是:如果非数据字段值相等,那么数值字段值相加,其实这种描述不准确. COLLECT 简单的用法: LOOP  AT  t_dat ...

  6. mysql delete limit用法_你习惯delete语句后带上limit吗

    声明:本文基于MySQL讲解. 先不说习惯不习惯的,很多人也许会惊讶:还可以这样操作?其实,大家对这个操作比较陌生,也不奇怪.因为,学海无涯呀~ 语法 这个用法的详细语法是这样的:delete fro ...

  7. QT5 QSqlQuery的SELECT INSERT UPDATE DELETE命令用法

    1.QSqlQuery的SELECT查询记录用法: QSqlQuery q("SELECT * FROM departments");QSqlRecord rec = q.reco ...

  8. delphi 中 delete的用法

    delete 是删除一个 字符串中的 某部分字符 用法是 delete(str,//被删除的字符串                index,//从第几个字符开始删除               co ...

  9. abap Loop循环用法

    LOOP AT itab - Basic Form LOOP AT itab result [cond 条件]. ... [AT ... ... ENDAT.] ... ENDLOOP. 语句LOOP ...

最新文章

  1. 将war包发布到测试服的常用命令
  2. IDEA 点击进入方法内部_【推荐收藏】IDEA的Debug调试,你全会用么?
  3. RTP之H264封包和解包
  4. RMAN之一:快速入门
  5. fiddler工具条、状态栏、请求信息栏各按钮的作用
  6. IDEA Docker 插件安装
  7. Celo计划推出一种与欧元挂钩的新稳定币
  8. Markdown Cookbook by Eric
  9. 计算机概论读后感,电子商务概论读后感.doc
  10. 通用代码:发送短信并显示倒计时
  11. hudi系列-旧文件清理(clean)
  12. 未来软件开发的发展趋势
  13. 科比历年全部比赛合集【百度网盘高清分享】
  14. Python数据可视化Part 5-Matplotlib 3D图片与投影教学-代码详解
  15. 手动爬取炉石传说所有卡牌
  16. html name选择器,iframe标签的name属性
  17. python基础教学习题_python基础|数据类型练习题
  18. 从懵懂走向成熟,证明属于自己的征程
  19. 网络聊天程序的设计与实现
  20. Pintos project 1 实验报告(代码分享)

热门文章

  1. 腾讯工作心得:原型该画到什么程度?
  2. PMCAFF产品经理与融资7500万的故事
  3. 百万级微信服务号如何做活动运营和用户运营?
  4. 猎豹产品经理:「全球化产品」应该要避开的几个坑
  5. 逻辑判断-if语句/文件目录属性判断/case判断
  6. Unity Shader入门精要学习笔记 - 第6章 开始 Unity 中的基础光照
  7. [Aaronyang] 写给自己的WPF4.5 笔记6[三巴掌-大数据加载与WPF4.5 验证体系详解 2/3]
  8. 常见的基于node.js的web框架
  9. css3整理--border-radius
  10. 如何为javascript代码编写注释以支持智能感知