foxting

Open SQL:3)多个表数据连接查询

      ABAP中当需要同时查询多个表的相关字段时,需要使用到JOIN语句,跟平常数据库中用到的连接查询基本上相同。共包含三种:

      1)INNER JOIN:查询结果包含两个连接表中彼此相对应的数据记录。

      2)LEFT OUTER JOIN:查询结果集中包含左则表中的所有数据记录,右表中仅查询出包含相对应的匹配条件的数据。

      3)FULL OUTER JOIN:包含左右表所有的记录。

      [For Example]

      TABLES:SPFLI,SFLIGHT.
      DATA:BEGIN OF Xflight OCCURS 0,
               airpfrom LIKE SPFLI-Airpfrom,
               airpto LIKE SPFLI-Airpto,
               fldate LIKE SFLIGHT-Fldate,
              deptime LIKE SPFLI-Deptime,
      END OF Xflight.

     SELECT a~airpfrom a~airpto b~fldate a~deptime INTO CORRESPONDING FIELDS OF TABLE Xflight
     FROM SPFLI AS a INNER JOIN SFLIGHT AS b
     ON a~CARRID = b~CARRID AND a~CONNID = b~CONNID
     ORDER BY a~airpfrom a~airpto b~fldate a~deptime.

     LOOP AT Xflight.
        WRITE: / \'Airpfrom=\', Xflight-Airpfrom,
                    / \'Airpto=\', Xflight-Airpto.
    ENDLOOP.

    *查询结果如下图所示:

 

发表于 2012-05-24 21:47  KenNgai  阅读(2623)  评论(0编辑  收藏  举报
 

分类:

技术点:

相关文章:

  • 2022-02-07
  • 2022-01-24
  • 2021-06-21
  • 2022-12-23
  • 2021-12-05
  • 2021-11-30
  • 2021-11-28
  • 2022-02-08
猜你喜欢
  • 2021-12-12
  • 2021-12-05
  • 2021-09-17
  • 2022-02-09
  • 2022-12-23
  • 2021-09-18
相关资源
相似解决方案