oracle SQL left join()或full out join()根据键排除记录
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle SQL left join()或full out join()根据键排除记录相关的知识,希望对你有一定的参考价值。
我想在一个表中排除记录,如果它出现在另一个表中(基于键)
我想删除第一个表中的记录:cust_recommendataion在第二个表中具有相同的(cust_id和product_id),第二个表中的不同对(cust_id和product_id)可能只是第一个表的一个子集'不同的一对(cust_id和product_id)第二个表中也有一些'(cust_id和product_id)'对可能是唯一的。
我有2个表1. cust_recommendataion:每个cust_id都有多个product_id
cust_id | product_id |秩
- cust_last_buy;每个cust_id都有多个product_id
cust_id | product_id |日期
我很想知道如何做到这一点的建议。使用left join()或full out join()或任何其他建议?谢谢!
答案
使用Exist
的一种可能的解决方案:
Delete from cust_recommendataion c
WHERE
EXISTS (
SELECT
*
FROM
cust_last_buy
WHERE
cust_id = c.cust_id
and
product_id = c.product_id
)
以上是关于oracle SQL left join()或full out join()根据键排除记录的主要内容,如果未能解决你的问题,请参考以下文章