Postgres 15.0发布了MERGE功能,可以使用源数据对目标表进行修改操作。MERGE提供了条件插入、更新和删除行的单一SQL语句,替代了多个过程语言语句。Citus在分布式环境中采用不同策略处理MERGE,适用于数据同步、去重、日志记录、实时数据更新和批量操作。MERGE命令执行左外连接,根据匹配或不匹配的状态对每一行进行操作。Citus使用灵活的重新分区策略处理复杂情况,并将输出重新分区以匹配目标表。然而,MERGE命令在分布式表上有两个限制,必须包括目标表的分布键,并且在NOT MATCHED...INSERT()操作中,提供的值必须是源查询的连接子句。目前还不能将MERGE用于引用表,也不能将其用于列存储表。子查询和CTE只能在源部分使用。
完成下面两步后,将自动完成登录并继续当前操作。