当前位置: 首页 > news >正文

SAP-ABAP:SAP中DELECT语句用法详解实例总结

SAP-ABAP:SAP中DELECT语句用法详解实例总结

一、内表数据删除操作

操作类型语法示例关键注意事项
1. 按索引删除DELETE <itab> INDEX <idx>DELETE lt_mat INDEX 3• 索引越界时 SY-SUBRC=4
• 删除后索引自动重排
2. 条件删除DELETE <itab> WHERE <cond>DELETE lt_mat WHERE matnr = 'MAT001'• 条件字段建议为排序/哈希键
• 大表用SORT预处理
3. 去重删除DELETE ADJACENT DUPLICATES [...]SORT lt_mat BY matnr.
DELETE ADJACENT...
必须预先排序
COMPARING缺省时比较所有字段
4. 清空内表REFRESH <itab>
FREE <itab>
FREE lt_matCLEAR:仅初始化表头
FREE:释放内存空间

二、数据库表删除操作

1. 单条删除 (行级操作)
DELETE FROM <dbtab> WHERE <key> = <val>.
COMMIT WORK.  " 显式提交

场景:精确主键删除
示例

DELETE FROM mara WHERE matnr = 'MAT001'.
IF sy-subrc = 0.COMMIT WORK.
ENDIF.
2. 批量删除 (高效操作)
DELETE <dbtab> FROM TABLE <itab>.  " 内表需含完整主键

场景:删除1000+条记录
性能要点

  • 比循环单删快10x+
  • 内表行数建议 ≤ 5000(避免锁超时)
3. 条件范围删除
DELETE FROM <dbtab> WHERE <field> IN <sel_range>.

示例

DATA lt_range TYPE RANGE OF mtart.
lt_range = VALUE #( ( sign = 'I' option = 'EQ' low = 'ROH' ) ). 
DELETE FROM mara WHERE mtart IN lt_range.
4. 关联删除 (多表操作)
DELETE FROM <table1>USING <table2>WHERE <table1>~<key> = <table2>~<key>AND <condition>.

示例:删除供应商未激活的物料

DELETE FROM maraUSING lfa1WHERE mara~lifnr = lfa1~lifnrAND lfa1
http://www.lryc.cn/news/583355.html

相关文章:

  • Go语言Gin框架实战:开发技巧
  • 2024 睿抗编程技能赛——省赛真题解析(含C++源码)
  • 【Python】遇到 “non-integer arg 1 for randrange() ” 问题的解决方法
  • 技术开发栈中 URL地址末尾加不加 “/“ 有什么区别?
  • 闲庭信步使用图像验证平台加速FPGA的开发:第六课——测试图案的FPGA实现
  • 解决IDEA缺少Add Framework Support选项的可行性方案
  • java中list.remove(item); // 直接移除会导致ConcurrentModificationException
  • 图像自动化处理初探:从拖拽上传到参数设置
  • 基于Java+Maven+Testng+Selenium+Log4j+Allure+Jenkins搭建一个WebUI自动化框架(5)失败用例截图与重试
  • 制作MikTex本地包可用于离线安装包
  • Synology Cloud Sync构建的企业级跨域数据中台
  • 前端性能优化:从之理论到实践的破局道
  • 【PTA数据结构 | C语言版】一元多项式求导
  • 使用 Docker 搭建 Rust Web 应用开发环境——AI教你学Docker
  • 图像处理中的凸包检测:原理与实现
  • 前端开发自动化设计详解
  • 两种方式清除已经保存的git账号密码
  • AI在垂直领域的深度应用:医疗、金融与自动驾驶的革新之路
  • 分治算法---快排
  • 深度帖:浏览器的事件循环与JS异步
  • Foundry智能合约测试设计流程
  • 【25软考网工】第十章 (3)网络冗余设计、广域网接入技术
  • 【一起来学AI大模型】PyTorch DataLoader 实战指南
  • 前端交互自定义封装类:“双回调自定义信息弹窗”
  • ClickHouse 时间范围查询:精准筛选「本月数据」
  • pytorch 自动微分
  • Git 详解:从概念,常用命令,版本回退到工作流
  • sqlplus表结构查询
  • 3.常⽤控件
  • 跨平台ROS2视觉数据流:服务器运行IsaacSim+Foxglove本地可视化全攻略