【发布时间】:2018-10-20 08:32:08
【问题描述】:
我需要提取在存档表中没有历史记录的记录。需要在存档中检查 1 条记录的 2 字段。
从技术上讲,我的要求是左侧连接,右侧为“空”(也称为排除连接),在 abap openSQL 中通常是这样实现的(无论如何,对于我的场景):
Select * from xxxx //xxxx is a result for a multiple table join
where xxxx~key not in (select key from archive_table where [conditions] )
and xxxx~foreign_key not in (select key from archive_table where [conditions] )
这 2 个字段还会针对另外 2 个表进行检查,因此这意味着总共有 6 个子查询。
我以前使用过的数据库引擎通常有一些方法来处理此类问题(例如排除连接或外部应用)。
对于这种特殊情况,我将尝试将 ABAP 逻辑与“针对所有条目”一起使用,但 我仍然想知道是否可以使用子查询的结果来检查超过 1 个字段或在多个字段上使用另一种形式的排除连接逻辑,使用 SQL(不涉及应用程序服务器)。
【问题讨论】:
标签: subquery abap exists opensql