建立暫時的預備資料表 - Amazon Redshift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

建立暫時的預備資料表

臨時資料表為暫時的資料表,其中保存了將用來對目標資料表進行變更的所有資料,包括更新和插入。

合併操作需要臨時資料表和目標資料表之間的聯結。若要共置聯結資料列,請將臨時資料表的分佈索引鍵設定為與目標資料表的分佈索引鍵相同的資料欄。例如,如果目標資料表使用外部索引鍵資料欄做為其分佈索引鍵,請對臨時資料表的分佈索引鍵使用相同的資料欄。如果您使用 CREATE TABLE LIKE 陳述式建立臨時資料表,臨時資料表將從父資料表繼承分佈索引鍵。如果您使用 CREATE TABLE AS 陳述式,新資料表將不會繼承分佈索引鍵。如需詳細資訊,請參閱「」使用數據分配樣式

如果分佈索引鍵與主索引鍵不同,並且分佈索引鍵不會隨著合併操作更新,請在分佈索引鍵資料欄上新增備援聯結述詞以啟用共置聯結。例如:

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

若要驗證查詢將使用共置聯結,請使用 EXPLAIN 執行查詢,並檢查所有聯結上的 DS_DIST_NONE。如需詳細資訊,請參閱「」評估查詢計畫