ERP俱乐部
ERP爱好者、ERP从业者互相交流、互相学习的乐园;我们的愿景是成为全球一流的中文ERP(Enterprise Resource Planning)交流平台
网站首页 论坛首页 搜索 用户列表 FAQ 注册 登录  
ERP俱乐部 -> SAP专栏 -> ABAP -> a lesson for each day(205-1-7)
  a lesson for each day(205-1-7)
帖子发起人: mara   发起时间: 2005-01-07 05:21 下午   回复数: 8
? 上一主题 下一主题 ?
楼主
  -
mara 离线,最后访问时间: 2010/9/1 9:32:59 mara

发帖数前75位
男

版主
职务: 版主
50级
等级: 50级
注册: 2004年10月28日
经验: 336
积分: 316
精华: 1
发贴: 257
排名: 73
Global ModeratorsSite ModeratorsSite Registered Users培训学员(ABAP学员服务区-深圳200503班) 培训学员(ABAP学员服务区-深圳200508班) 培训学员(FI学员服务区-上海200602班) 培训学员(FI学员服务区-深圳200604班)培训学员(ABAP学员服务区-深圳200607班)
  a lesson for each day(205-1-7)
 

REPORT demo_select_inner_join.

DATA: BEGIN OF wa,
        carrid TYPE spfli-carrid,
        connid TYPE spfli-connid,
        fldate TYPE sflight-fldate,
        bookid TYPE sbook-bookid,
      END OF wa,
      itab LIKE SORTED TABLE OF wa
                WITH UNIQUE KEY carrid connid fldate bookid.

SELECT  p~carrid p~connid f~fldate b~bookid
  INTO  CORRESPONDING FIELDS OF TABLE itab
  FROM  ( ( spfli AS p
            INNER JOIN sflight AS f ON p~carrid = f~carrid AND
                                       p~connid = f~connid    )
            INNER JOIN sbook   AS b ON b~carrid = f~carrid AND
                                       b~connid = f~connid AND
                                       b~fldate = f~fldate     )
  WHERE p~cityfrom = 'FRANKFURT' AND
        p~cityto   = 'NEW YORK'  AND
        f~seatsmax > f~seatsocc.

LOOP AT itab INTO wa.
  AT NEW fldate.
    WRITE: / wa-carrid, wa-connid, wa-fldate.
  ENDAT.
  WRITE / wa-bookid.
ENDLOOP.


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

mara,SAPCLUB TEAM

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

You ok,so we ok

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


msn:jiangyong_120@hotmail.com
分享按钮 IP 地址: 已登录   来自: 已登录    返回顶部
第 2 楼
  -
kitty 离线,最后访问时间: 2021/8/19 15:32:28 kitty

发帖数前10位
女

超级管理员
职务: 超级管理员
90级
等级: 90级
注册: 2004年9月7日
区域: 深圳
经验: 3,483
积分: 5,947
精华: 0
发贴: 2,176
排名: 10
Global AdministratorsGlobal ModeratorsSite ModeratorsSite Registered Users培训学员(FI学员服务区-深圳200410班)培训学员(SD学员服务区-深圳200503班) 培训学员(ABAP学员服务区-深圳200503班) 培训学员(MM学员服务区-上海200412班) 培训学员(SAP PP) 培训学员(MM学员服务区-深圳200412班) 培训学员(SD学员服务区-深圳200407班) 培训学员(SD学员服务区-上海200503班) 培训学员(FI学员服务区-上海200502班) 培训学员(FI学员服务区-深圳200504班)培训学员(MM学员服务区-北京200505班) 培训学员(MM学员服务区-上海200505班) 培训学员(PP学员服务区-上海200505班) 培训学员(FI学员服务区-北京200505班) 培训学员(MM学员服务区-深圳200507班)培训学员(ABAP学员服务区-深圳200508班) 培训学员(ABAP学员服务区-上海200508班) 培训学员(CO学员服务区-上海200510班) 培训学员(CO学员服务区-深圳200510班) 培训学员(BASIS学员服务区-深圳200510班) 培训学员(MM学员服务区-上海200510班) 培训学员(MM学员服务区-广州200511班)培训学员(SD学员服务区-北京200603班) 培训学员(BW学员服务区-上海200710黄金周班) 培训学员(HR学员服务区-上海200711班) 每日发帖之星
Re: a lesson for each day(205-1-7)
 
good good study,  day day up!Wink
Kitty,ERPCLUB TEAM
You ok,so we ok
email:tm@yok.com.cn
MSN:kitty_mtang@hotmail.com
我的博客:http://www.erpclub.org/blog/kitty/
IP 地址: 已登录   来自: 已登录    返回顶部
第 3 楼
  -
tiantian536 离线,最后访问时间: 2005/2/3 19:11:33 tiantian536

无等级

20级
等级: 20级
注册: 2004年11月29日
经验: 27
积分: 27
精华: 0
发贴: 22
排名: 1,069
Site Registered Users
Re: a lesson for each day(205-1-7)
 
LOOP AT itab INTO wa.
AT NEW fldate.
WRITE: / wa-carrid, wa-connid, wa-fldate.
ENDAT.
WRITE / wa-bookid.
ENDLOOP.

读itab,每遇到一个新的fldate,就写carrid.connid,fldate,再换行写bookid.
如没有新的fldate,就只写它的bookid.

是不是该这样理解?
分享按钮 IP 地址: 已登录   来自: 已登录    返回顶部
第 4 楼
  -
mara 离线,最后访问时间: 2010/9/1 9:32:59 mara

发帖数前75位
男

版主
职务: 版主
50级
等级: 50级
注册: 2004年10月28日
经验: 336
积分: 316
精华: 1
发贴: 257
排名: 73
Global ModeratorsSite ModeratorsSite Registered Users培训学员(ABAP学员服务区-深圳200503班) 培训学员(ABAP学员服务区-深圳200508班) 培训学员(FI学员服务区-上海200602班) 培训学员(FI学员服务区-深圳200604班)培训学员(ABAP学员服务区-深圳200607班)
Re: a lesson for each day(205-1-7)
 
你这样理解很正有确,还有一个更好的办法就是运行一下,验证一下看跟你想象中的结果是不是一样。
-----------------

mara,SAPCLUB TEAM

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

You ok,so we ok

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


msn:jiangyong_120@hotmail.com
IP 地址: 已登录   来自: 已登录    返回顶部
第 5 楼
  -
jufe 离线,最后访问时间: 2005/2/2 12:15:55 jufe

无等级

10级
等级: 10级
注册: 2005年1月12日
经验: 14
积分: 14
精华: 0
发贴: 3
排名: 2,194
Site Registered Users
Re: a lesson for each day(205-1-7)
 
我不建议大家使用多个INNER JOIN连用的语句,有一天你会发现数据不准确的。
分享按钮 IP 地址: 已登录   来自: 已登录    返回顶部
第 6 楼
  -
ABAP低能儿 离线,最后访问时间: 2005/3/18 9:40:04 ABAP低能儿

无等级

10级
等级: 10级
注册: 2005年1月20日
经验: 14
积分: 14
精华: 0
发贴: 12
排名: 2,212
Site Registered Users
Re: a lesson for each day(205-1-7)
 
恩,INNER JOIN我一般不用
IP 地址: 已登录   来自: 已登录    返回顶部
第 7 楼
  -
chrishcn 离线,最后访问时间: 2005/3/31 16:35:55 chrishcn

无等级

10级
等级: 10级
注册: 2004年12月14日
经验: 19
积分: 19
精华: 0
发贴: 18
排名: 1,735
Site Registered Users
Re: a lesson for each day(205-1-7)
 
Inner Join导致数据不准确?原因是来自于代码不够严谨,还是系统表的数据不对呢?
我觉得Inner Join很好用呀?!在Where里把条件写清楚些就好了,不能够含糊。你任何语法都是一样的呀!
我倒没发现Inner Join有出现数据问题。可能是我刚学不久,没有开法经验,对业务也不是很了解吧!请各位大虾解释一下数据不准确的原因吧!
分享按钮 IP 地址: 已登录   来自: 已登录    返回顶部
第 8 楼
  -
tiantian536 离线,最后访问时间: 2005/2/3 19:11:33 tiantian536

无等级

20级
等级: 20级
注册: 2004年11月29日
经验: 27
积分: 27
精华: 0
发贴: 22
排名: 1,069
Site Registered Users
Re: a lesson for each day(205-1-7)
 
我也觉得inner join 很好用啊,没有遇到过数据不准确的情况.???
IP 地址: 已登录   来自: 已登录    返回顶部
第 9 楼
  -
dxue 离线,最后访问时间: 2005/2/20 17:05:35 dxue

无等级

10级
等级: 10级
注册: 2005年1月25日
经验: 3
积分: 3
精华: 0
发贴: 3
排名: 7,324
Site Registered Users
Re: a lesson for each day(205-1-7)
 
可能是左右外連接的選擇不同造成的
分享按钮 IP 地址: 已登录   来自: 已登录    返回顶部
 第 1 页 总共 1 页 [共有 9 条记录]
ERP俱乐部 -> SAP专栏 -> ABAP -> a lesson for each day(205-1-7)
(C)Copyright 2005-2020 www.erpclub.org All Rights Reserved.
Tel:+86-755-26444630
Email:webmaster@yok.com.cn