Inner Join, Left Outer Join和Association的區別
測試用的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的原創技術文章,請關注公眾號"汪子熙"或者掃描下面二維碼:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2151456/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- join、inner join、left join、right join、outer join的區別
- sql的left join 、right join 、inner join之間的區別SQL
- MySQL LEFT JOIN/ INNER JOIN/RIGHT JOINMySql
- SAP ABAP CDS view 裡 INNER JOIN 和 Association 的區別View
- mysql left join轉inner joinMySql
- sql:left join和join區別SQL
- mysql中的left join、right join 、inner join的詳細用法MySql
- 【SQL】13 SQL 別名、SQL 連線(JOIN)、SQL INNER JOIN 關鍵字、SQL LEFT JOIN 關鍵字、SQL RIGHT JOIN 關鍵字、SQL FULL OUTER JSQL
- mysql的left join和inner join的效率對比,以及如何優化MySql優化
- oracle知識整理(1) union和union all的區別,left join和right join的區別(各種join的區別)Oracle
- Mysql-left join on後接and,和where的區別MySql
- LEFT JOIN 和JOIN 多表連線
- mysql INNER JOIN、LEFT JOIN、RIGHT JOIN;內連線(等值連線)、左連線、右連線MySql
- SQL Union 和left join
- mysql + left joinMySql
- Inner join 寫法
- left join 後用 on 還是 where,區別大了!
- SQL Server Left joinSQLServer
- PostgreSQL/GreenPlum Merge Inner Join解密SQL解密
- 【MySQL】LEFT JOIN 踩坑MySql
- SQL語句中 left join 後用 on 還是 where,區別大SQL
- oracle update left join查詢Oracle
- mysql left join 優化學習MySql優化
- MySQL 之 LEFT JOIN 避坑指南MySql
- Mysql join 的本質,Nested Loop Join 和 Hash JoinMySqlOOP
- MYSQL 怎麼 LEFT JOIN 多表聯查MySql
- mysql 左連結 left join 條件寫在where 後面與 on後面的區別MySql
- MYSQL count標量子查詢改left joinMySql
- Python中threading的join和setDaemon的區別及用法[例子]Pythonthread
- 【SQL】Oracle SQL join on語句and和where使用區別SQLOracle
- Oracle中left join中右表的限制條件Oracle
- 一個left join SQL 簡單優化分析SQL優化
- TiDB資料庫left join與版本問題TiDB資料庫
- 深入理解mysql之left join 使用詳解MySql
- mysql常用連線查詢join,left,right,crossMySqlROS
- PostgreSQL 原始碼解讀(208)- 查詢#121(Valid OUTER JOIN Optimizations)SQL原始碼
- SQL JOIN 中 on 與 where 有何區別SQL
- mybatis collection解析以及和association的區別MyBatis