测试用的CDS视图的源代码,第8行用Inner Join连接TJ02T, 后者存放了所有系统状态的ID和描述。

Inner Join测试结果:对于那些在TJ02T里没有维护描述信息的状态,它们不会出现在结果集里。

把第八行的Inner Join改成Outer Join,测试结果相反:注意观察下图stat列值为E0001的行项目也出现在了结果集里。

Association的测试结果同Left Outer Join一致。

Association的底层实现实际上和Left Outer Join一致。有两种办法来验证这个结论。

方法1

在ABAP Development Studio里预览一个含有association实现的CDS view,能够在工具里发现该association最后是通过Left Outer Join实现的。

方法2

事务码ST05里的这个按钮: 显示执行计划,也能显示出association底层是由Left Outer Join实现的。

要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:

Inner Join, Left Outer Join和Association的区别的更多相关文章

  1. SQL中inner join、outer join和cross join的区别

    对于SQL中inner join.outer join和cross join的区别简介:现有两张表,Table A 是左边的表.Table B 是右边的表.其各有四条记录,其中有两条记录name是相同 ...

  2. mysql inner join,full outer join,left join,right jion

    https://sites.google.com/site/349624yu/courses/mysql/mysqldbgjzcx inner join,full outer join,left jo ...

  3. SQL的JOIN语法解析(inner join, left join, right join, full outer join的区别)

    原文链接:http://www.powerxing.com/sql-join/ 总的来说,四种JOIN的使用/区别可以描述为: left join 会从左表(shop)那里返回所有的记录,即使在右表( ...

  4. 【转载】SQL中inner join、outer join和cross join的区别

    对于SQL中inner join.outer join和cross join的区别很多人不知道,我也是别人问起,才查找资料看了下,跟自己之前的认识差不多, 如果你使用join连表,缺陷的情况下是inn ...

  5. SQL中inner join,outer join和cross join的区别

    使用join连表,缺陷的情况下是inner join,开发中使用的left join和right join属于outer join,outer join还包括full join 现有两张表,Table ...

  6. SQL夯实基础(一):inner join、outer join和cross join的区别

    一.数据构建 先建表,再说话 create database Test use Test create table A ( AID ,) primary key, name ), age int ) ...

  7. inner join, left join, right join, full outer join的区别

    总的来说,四种join的区别可以描述为: left join 会从左表(shop)那里返回所有的记录,即使在右表(sale_detail)中没有匹配的行. right outer join 右连接,返 ...

  8. LINQ to SQL系列四 使用inner join,outer join

    先看一个最简单的inner join,在读取Student表时inner join Class表取的对应的Class信息: static void Main(string[] args) { usin ...

  9. HIVE中join、semi join、outer join举例详解

    转自 http://www.cnblogs.com/xd502djj/archive/2013/01/18/2866662.html 举例子: hive> select * from zz0;  ...

随机推荐

  1. 人生苦短,我用pycharm

    一.安装 1.首先到官网上下载正版,然后点击安装,只需要更改下面一个地方即可 2.激活码或者帐号的话,可以去百度搜,也可以去某宝买,也就3块钱(一年),不建议使用破解版,如果你真的差这三块钱的话,你还 ...

  2. javascript 定时任务封装

    /** * 定时任务 * 间隔时间,执行次数,要带的参数,要执行的函数. */ var TimingTask = function(time,count,param,fun){ this.id = - ...

  3. DbUtils(二) 结果集实例

    单行数据处理:ScalarHandler    ArrayHandler    MapHandler    BeanHandler 多行数据处理:BeanListHandler    Abstract ...

  4. pg存储过程和sql语句块

    展E宝项目使用的是postgresql数据库,批量发送红包需求,需要采用存储过程来初始化红包记录数据. 创建存储过程语句有固定的架子,如下 CREATE OR REPLACE FUNCTION pub ...

  5. 【Java】使用Eclipse进行远程调试,Windows下开启远程调试

    原博链接:http://blog.csdn.net/sunyujia/article/details/2614614   今天决定做件有意义的事,写篇图文并茂的blog,为什么要图文并茂?因为很多事可 ...

  6. Spring接收List型参数

    第一种形式: 提交的数据形式:id=1,2,3 --> urlEncoding -->  id=1%2C2%2C3 <form method="post" act ...

  7. rockmongo配置文件config.php

    使用编辑器(比如notepad或者VI/VIM命令)打开RockMongo安装目录下的config.php,所有的配置都在这里. 认证 mongo_auth 和control_auth 在开始使用Ro ...

  8. Ajax的XMLHttpRequest对象

    编写一个例子:从服务器取回一个Hello Ajax字符串. HTML: <input type="button" value="ajax提交" oncli ...

  9. 使用Git(msysgit)和TortoiseGit上传代码到GitHub

    1.准备 下载Git for Windows (msysgit) 下载TortoiseGit 安装过程很简单,一直点击下一步到完成即可. 2.配置TortoiseGit 1.双击TortoiseGit ...

  10. opencv2.4.10+VS2012配置问题

    opencv2.4.10+VS2012配置 作为opencv的初学者,第一个难题想必都一样,如何配置opencv+VS的环境呢?在网上的教程,铺天盖地,但我仍然是尝试了十几次才找到属于自己的那套配置方 ...