有条不紊地删除并插入postgres

时间:2017-03-08 12:40:26

标签: postgresql

我有两张表Table_ATable_B。如何编写执行以下逻辑的条件SQL

If table A records match table B records on id
then
    delete records from table A and Insert records into Table B

我如何使用SQL with

执行此操作
delete from Table_A where Exists (select a.id from TABLE_A
join TABLE_B as b on a.id = b.id)

插入内容为:Insert into Table_A (id) select id from TABLE_B

1 个答案:

答案 0 :(得分:0)

使用CTE捕获已删除记录的ID,并将这些记录与b记录重新连接:

{{1}}
顺便说一下:你应该非常好的理由(比如想激活触发器)更喜欢删除+插入更新。