用从表b中检索到的复合键从表a中删除最有效的方法是什么



I用户INNER JOIN,但它似乎并不高效:

DELETE from table1 
FROM table1 as a INNER JOIN table2 as b 
ON b.pk1=a.pk1 
AND b.pk2=a.pk2

MERGE的声明基本相同:

MERGE table1 AS target  
USING table2 AS source  
ON (target.pk1= source.pk1 AND target.pk2=source.pk2)  
WHEN MATCHED   
THEN DELETE;  

有更好的方法吗?谢谢

事实上,merge语句在后台执行内部联接,就像delete语句一样。在这种情况下,没有具体的方法来提高性能。然而,应用分发类型、分区和索引的适当组合可以提高内部联接性能。

最新更新