

 从补丁 198 开始，Amazon Redshift 将不再支持创建新的 Python UDF。现有的 Python UDF 将继续正常运行至 2026 年 6 月 30 日。有关更多信息，请参阅[博客文章](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)。

# 创建临时的暂存表
<a name="merge-create-staging-table"></a>

*暂存表* 是一个临时表，用来保存将用于对*目标表* 进行更改（包括更新和插入）的所有数据。

合并操作需要在暂存表和目标表之间建立联接。要并置联接行，请将暂存表的分配键的列设置为与目标表的分配键的列相同。例如，如果目标表使用一个外键列作为其分配键，则对暂存表的分配键使用相同的列。如果使用 [CREATE TABLE LIKE](r_CREATE_TABLE_NEW.md#create-table-like) 语句创建一个暂存表，则该暂存表将从父表继承分配键。如果使用 CREATE TABLE AS 语句，则新表不会继承分配键。有关更多信息，请参阅[用于优化查询的数据分配](t_Distributing_data.md)。

如果分配键与主键不相同且在合并操作中未更新分配键，则在分配键列上添加一个冗余联接谓词以启用并置联接。例如：

```
where target.primarykey = stage.primarykey 
and target.distkey = stage.distkey
```

要验证查询是否将使用并置联接，请使用 [EXPLAIN](r_EXPLAIN.md) 运行查询并检查所有联接上是否有 DS\$1DIST\$1NONE。有关更多信息，请参阅[评估查询计划](c_data_redistribution.md)。