取数据一般都会用到多个表,inner join是非常常用的操作,但因为比较耗数据库资源,所以很多时间不推荐。 大家也知道,SAP这东西,应用服务器可以扩展为多个,但数据库服务器只有一个,所以必须少消耗DB资源。 据boss说,一般多对多或关联很多表(例如3个以上)时就不用inner join(前者是因为难搞清关系,不太清晰),应改...
inner join 前提是两个表有相同的Key可作为关联,比如 EKKO&EKPO ->EKKO INNER JOIN EKPO ON EKKO~EBELN = EKPO~EBELN.另外:BKPF&BSEG虽然有共同的Key,但是SAP不允许用Inner Join去读取它们,可能是考虑到这两个表太大了吧。当两个表不能用Inner Join的时候,用 for all entries in T_TEMP:1...
尽量少用INNER JOIN,可以分条件嵌套查询,使用FOR ALL ENTRIES IN,RANGES等技术都可以,尽量用上个查询的结果放入内表,内表做下个查询的条件嵌套查询效率会高点。
FOR ALL ENTRIES IN:会根据查询的字段,将最终结果去重 INNER JOIN 内表:相同的查询条件,会将数据全部查出 所以使用INNER JOIN 内表需要做去重,可以通过两种办法: 去重方法一:DISTINCT查询去重 在去重方面,FOR ALL ENTRIES IN 等价于 INNER JOIN 内表+DISTINCT,当查询的字段不是所有关键字时,会出现数据丢失的情况 ...
FOR ALL ENTRIES IN 与 INNER JOIN 内表,目的都是通过内表找数据库表与之对应的数据,但是有区别。 1.1、写法 FOR ALL ENTRIES IN "---@斌将军--- IF gt_acd IS NOT INITIAL. SELECT acdoca~rldnr,"总账会计中的分类账 acdoca~rbukrs,"公司代码 acdoca~gjahr,"会计年度 acdoca...
abap for all entries in 的使用 2012-05-04 15:16 −for all entries in的使用 在ABAP开发中,对于不能使用join的聚集表或者需要使用SELECT 的内表,我们一般使用for all entries in 语句将该表与内表串联,查询出需要的数据,例如: BSEG聚集表为例,如下: SELECT bseg~kunnr... ...
FOR ALL ENTRIES IN 与 INNER JOIN 内表,目的都是通过内表找数据库表与之对应的数据,但是有区别。 1.1、写法 FOR ALL ENTRIES IN "---@斌将军--- IF gt_acd IS NOT INITIAL. SELECT acdoca~rldnr,"总账会计中的分类账 acdoca~rbukrs,"公司代码 acdoca~gjahr,"会计年度 acdoca...
尽量少用INNER JOIN,可以分条件嵌套查询,使用FOR ALL ENTRIES IN,RANGES等技术都可以,尽量用上个查询的结果放入内表,内表做下个查询的条件嵌套查询效率会高点。 追问: 如果分开来查的话不是要很多个内表接收 然后在拼凑到一个类表 如我要查5张表不就要定义五个内表来接收。 追答:你可以两张表inner join 然...
ABAP Development Hi Expert, Could you please help me in this inner join , Inner join is performance wise is not good so i want to replace instated of inner join for all entries. But when i am checking records of internal table there is difference. in inner join i am getting 11 records...
select f3 f4 into tabe itab2 from DB2 for all entries in itab1 where field = itab1-field and <other conditions> Reply Former Member 2008 Feb 21 7:22 AM 0 Kudos 721 SAP Managed Tags: ABAP Development Hi, Inner Join: Retrieves data from Data base tables based on ...