abap 如何得到内表中不重复的记录。

我的内表中好几个字段都一直在重复,我需要取出单个的就行。因为刚开始学,还希望大家能够多多帮忙,谢谢了。... 我的内表中好几个字段都一直在重复,我需要取出单个的就行。 因为刚开始学,还希望大家能够多多帮忙,谢谢了。 展开
 我来答
hatelove85911
2012-12-13 · 超过18用户采纳过TA的回答
知道答主
回答量:43
采纳率:0%
帮助的人:36万
展开全部
1.循环你的内表到工作区: wa
2. copy 你的内表到另一个一样的内表: itab_copy
3. delete itab_copy where f1 <> wa-f1 and f2 <> wa-f2 ...
4. 检查itab_copy剩余条数,如果等于1,那么说明这是条不重复的记录,如果>1那么是重复的
5.如果不重复append 到一个结果表中

循环结束,你就得到了所有不重复的记录。
nature0106
2012-12-14 · TA获得超过502个赞
知道小有建树答主
回答量:288
采纳率:0%
帮助的人:199万
展开全部
用去重语法就行了
首先进行排序,用语法
SORT ITAB(内表名) BY 重复字段名.
DELETE ADJACENT DUPLICATES FROM itab(内表名)
该语法用于去除内表中重复的数据(删除的条件是相临的数据重复,所以需要先以重复字段排序,使相同字段变得相临),不知道是否能解决你的问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友d6a9aad
2012-12-14
知道答主
回答量:9
采纳率:0%
帮助的人:1.4万
展开全部
用关键字DELETE DUPLICATE ADJACENT FROM IT_TAB,想要比较某几个字段就加上comparing,如果后面不跟字段名将会判断所有字段是否重复,你可以F1看下它具体的意思。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
neutc
2012-12-05 · TA获得超过683个赞
知道小有建树答主
回答量:428
采纳率:100%
帮助的人:467万
展开全部
1. 先按照你关心的那几个字段排序.
2. 用 DELETE DUPLICATE ADJACENT FROM IT_TAB COMPARING 字段1, 字段X...
这里的字段1到字段X就是你排序的那几个字段.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式