前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ABAP CDS中的Join

ABAP CDS中的Join

原创
作者头像
惨绿少年.
修改2021-04-30 17:55:32
7850
修改2021-04-30 17:55:32
举报
文章被收录于专栏:ABAPABAP

CDS中支持的join有:

  • Inner Join

define view ztest_cds3 as select from sflight as _sf

inner join spfli as _spf

on _sf.carrid = _spf.carrid

and _sf.connid = _spf.connid{

_sf.carrid,

_sf.connid,

_sf.fldate,

_sf.price,

_spf.countryf

}

Inner Join返回结果为表sflight与spfli之间的交集

  • Left outer join

define view ztest_cds3 as select from sflight as _sf

left outer join spfli as _spf

on _sf.carrid = _spf.carrid

and _sf.connid = _spf.connid{

_sf.carrid,

_sf.connid,

_sf.fldate,

_sf.price,

_spf.countryf

}

LEFT OUTER JOIN返回左表 sflight 的全部行和右表 spfli 满足ON条件的行,如果左表 sflight 的行在右表 spfli 中没有匹配,那么这一行右表 spfli 中对应数据用NULL代替。

LEFT OUTER JOIN产生左表 sflight 的完全集,而右表 spfli 中匹配的则有值,没有匹配的则以null值取代。

  • Right outer join

define view ztest_cds3 as select from sflight as _sf

right outer join spfli as _spf

on _sf.carrid = _spf.carrid

and _sf.connid = _spf.connid{

_sf.carrid,

_sf.connid,

_sf.fldate,

_sf.price,

_spf.countryf

}

RIGHT OUTER JOIN返回右表 spfli 的全部行和左表 sflight 满足ON条件的行,如果右表 spfli 的行在左表 sflight 中没有匹配,那么这一行 左表sflight 中对应数据用NULL代替。

RIGHT Outer JOIN产生右表 spfli 的完全集,而左表 sflight 中匹配的则有值,没有匹配的则以null值取代。

  • Cross join

define view ztest_cds3 as select from sflight

cross join spfli{

sflight.carrid,

spfli.connid

}where sflight.carrid = 'AA'

cross join 返回两个表的笛卡尔积。如果不加where条件, 那产生的数据将非常大。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档