请教For all entries 语句问题

问题描述

请教一个ABAP中forallentriesinita的问题。以下是我的代码:SELECTVBAK~VBELNVBAK~KUNNRVBAP~POSNRVBAK~VKBURVBAK~BSTNKVBAK~ERDATVBAK~AUARTVBAP~MATNRVBAP~MATKLVBAP~WERKSVBAP~KWMENGT023T~WGBEZKNA1~NAME1INTOCORRESPONDINGFIELDSOFTABLEIT_GET_SOFROMVBAKINNERJOINVBAPONVBAK~VBELN=VBAP~VBELNLEFTJOINT023TONVBAP~MATKL=T023T~MATKLANDT023T~SPRAS='1'LEFTJOINKNA1ONVBAK~KUNNR=KNA1~KUNNRWHEREVBAK~AUARTIN('ZOR','VOR')ANDVBAP~MATNRINSO_MATNRANDVBAP~MATKLINSO_MATKLANDVBAP~WERKSINSO_WERKS.SELECTVBFA~VBELVVBFA~POSNVVBFA~MATNRVBFA~VBTYP_NVBFA~RFMNG*VBFA~VBELNINTOCORRESPONDINGFIELDSOFTABLEIT_MAT_DOCFROMVBFAFORALLENTRIESINIT_GET_SOWHEREVBELV=IT_GET_SO-VBELNANDPOSNV=IT_GET_SO-POSNR.但是在IT_MAT_DOC内表中的内容与VBFA表中的内容相比,少了部分的数据。如:VBELN=10003,在VBFA中有5条记录,但是我查出来的记录,却只有3条。这个是什么问题呢?望高手指教。

解决方案

解决方案二:
IT_MAT_DOC内有重复的记录SAP默认对内表做了DISTINCT操作
解决方案三:
谢谢,一开始怎么也想不通,后来在网上搜,终于搜到此原因。因为我们有分批发货的情况,故有相同的发货记录。我再加了一个时间段之后,问题得到解决。谢谢Footballnight的热心解答。

时间: 2024-11-13 06:38:20

请教For all entries 语句问题的相关文章

一请教一个sql查询语句

问题描述 一请教一个sql查询语句 在table1表里查询a字段大于3的记录,然后这些结果记录降序的排列后的前5条记录. 解决方案 select top 5 * from table1 where a > 3 order by 排序字段 desc 解决方案二: 不好意思,请问mysql的该怎么写呢? 解决方案三: select * from table1 where a>3 order by 排序 desc limit 5 解决方案四: 一个值得纪念的SQL查询语句

请教高手关于循环语句问题

问题描述 我编写的程序为什么不能进行二次循环??importjava.util.*;publicclasskaoshi{publicstaticvoidmain(String[]args){System.out.println("**********天气状况中英文对照表**********");System.out.println("干燥潮湿淡热下雨");System.out.println("DryMoistureHotRainynn");Sc

oracle语句------SQL 语句是否能执行

问题描述 -----SQL 语句是否能执行 请教下 下面的语句能否能删除某表的记录,我看不懂呢! delete from CCPS_PAYNUM_LIMIT_ELEMENT e WHERE INSTR(?,','||e.ple_pl_id||',')>0

select-新人请教SQL里这个查询语句的意思~

问题描述 新人请教SQL里这个查询语句的意思~ select * from PM_UserRole where UserID =1 select A.*,B.PermName from PM_RolePerm A inner join PM_Permission B On A.PermCode=B.PermCode where A.RoleID=4 解决方案 查询角色id=4,用户id=1的数据,用户表和角色表通过premcode关联 解决方案二: 同一楼上的,不过你似乎多写了一个on 解决方案

sql语句-请教一个SQL语句如何写?

问题描述 请教一个SQL语句如何写? 求助大侠:表A中有字段a,b,c,d,e,f,但并不是所有字段都一定有值,其中有值字段原值为'201xxxx'现在要将有值字段由'201xxxx'替换为'2001xxxx',无值字段保留为空,请问SQL语句如何写?(其中'201xxxx'中的xxxx代表数字,比如20101或201010101,位数不定,也可能只为201)请赐教. 解决方案 update [A] set [a] = left(a2)+'0'+right(alen(a)-2) [b] = le

数据-急!请教这个sql语句怎么写:两个条件查询,其中一个满足,另一个条件就不要加了

问题描述 急!请教这个sql语句怎么写:两个条件查询,其中一个满足,另一个条件就不要加了 条件2始终存在,条件1不一定始终有.条件1.条件2的数据可能同时存在,但是 当有条件1的数据存在的时候,显示条件1的数据: 如果没有,则显示条件2的数据的数据. 解决方案 select * from table where (条件1 and not exist (select * from table where 条件2)) or (条件2 and not exist (select * from tabl

Oracle查询SQL语句,请教各位大神

问题描述 Oracle查询SQL语句,请教各位大神 有这样一些数据: name subject张三 语文 李四 数学 张三 数学 李四 英语 张三 历史 想得到的结果: name subject张三 语文,数学,历史 李四 数学,英语 请教SQL语句,各路大神帮忙思考下. 解决方案 SELECT name , wmsys.wm_concat (subject) as result FROM 表名 GROUP BY name 解决方案二: 这个主要用SQL语句将subject里的数据拼接成一个字符

记录-请教个SQL语句问题。请大神指点

问题描述 请教个SQL语句问题.请大神指点 有个字段叫 作者姓名,该字段内内容为 "作者1,作者2,作者3",现在想把这个字段里面作者一样,但顺序不一样的记录查找出来,该怎么写? 比如就是 "张三,李四,赵五" ,但有的记录里面为"赵五,张三,李四",也不一定是这种顺序,就是名字完全一致,但排列的先后顺序不一样的字段. 更多 0 解决方案 写个存储过程,游标遍历,取出这个字段值,按逗号分隔,判断是否 一样 解决方案二: 非得在数据库中查么?按照每

数据-如图,请教sqlserver选择语句。

问题描述 如图,请教sqlserver选择语句. 其中两个id是混合主键,要求选择出红框中的部分(就是如果前面两项数据重复,就要求选择出historyid中较大的那一个,忽略较小的那个). 解决方案 select max(historyworkitemid) from table group by iworkitemid就可以了,先分组,每个分组中取最大的. 解决方案二: select * from (select iworkitemid, max(historyworkitemid) mid