gpt4 book ai didi

oracle找出2个表之间的差异

转载 作者:行者123 更新时间:2023-12-01 06:11:46 25 4
gpt4 key购买 nike

我有 2 个结构相同的表。一个是临时的,另一个是刺激的。每次都会加载整个数据集,有时这个数据集会从先前的数据集中删除记录。我首先将数据集加载到临时表中,如果删除了任何记录,我也想从 prod 表中删除它们。

那么我怎样才能找到存在于 prod 但不存在于 temp 中的记录呢?我尝试了外连接,但它似乎不起作用。它根据执行左外连接或右外连接从左侧或右侧的表中返回所有记录。

然后我还想删除 prod 表中的那些记录。

最佳答案

一种方法是使用 MINUS运算符(operator)

SELECT * FROM table1
MINUS
SELECT * FROM table2

将显示 table1 中的所有行在 table2 中没有完全匹配的(如果您只对确定两个表中是否存在特定键感兴趣,您显然可以指定较小的列列表)。

另一种方法是使用 NOT EXISTS
SELECT *
FROM table1 t1
WHERE NOT EXISTS( SELECT 1
FROM table2 t2
WHERE t1.some_key = t2.some_key )

关于oracle找出2个表之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13631224/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com