

 Amazon Redshift 將不再支援從修補程式 198 開始建立新的 Python UDFs。現有 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="cross-database-overview"></a>

本主題說明*跨資料庫查詢*，這些查詢是在單一 Amazon Redshift 叢集中的多個 Amazon Redshift 資料庫上執行。

透過在 Amazon Redshift 中使用跨資料庫查詢，您可以在 Amazon Redshift 叢集中跨資料庫進行查詢和寫入。透過跨資料庫查詢，無論您連線到哪個資料庫，都可以查詢和寫入 Amazon Redshift 叢集中任何資料庫的資料。跨資料庫查詢可避免產生資料複本，並簡化您的資料組織，以支援來自相同資料倉儲的多個業務群組。

透過跨資料庫查詢，您可以執行下列操作：
+ **查詢 Amazon Redshift 叢集中各個資料庫的資料**。

  您不僅可以從連線的資料庫中進行查詢，還可以從您有權存取的任何其他資料庫中讀取資料。

  當您在任何其他未連線的資料庫上查詢資料庫物件時，您只能讀取這些資料庫物件。您可以使用跨資料庫查詢存取 Amazon Redshift 叢集上任何資料庫的資料，而不必連線到該特定資料庫。這樣做可協助您快速輕鬆地查詢和聯結分散在 Amazon Redshift 叢集中多個資料庫的資料。

  您也可以在單一查詢中結合來自多個資料庫的資料集，並使用商業智慧 (BI) 或分析工具來分析資料。您可以使用標準 Amazon Redshift SQL 命令，繼續為使用者設定精細的資料表層級讀取存取控制。如此一來，您可以協助確保使用者只能看到他們有權存取之資料的相關子集。
+ **在 Amazon Redshift 叢集中的各個資料庫寫入資料**。

  您可以從連線的資料庫寫入，也可以從您有權存取的任何其他資料庫寫入。

  若您在任何其他未連線資料庫上具備資料庫物件的寫入許可，您就可以使用跨資料庫查詢從 Amazon Redshift 叢集上的任何資料庫寫入資料，而不必連線到該特定資料庫。這樣做可協助您進行複雜的寫入操作，同時快速輕鬆地聯結分散在 Amazon Redshift 叢集中多個資料庫的資料。

  您也可以在單一查詢中聯結多個資料庫的資料集，並使用不同的擷取、轉換和載入 (ETL) 或分析工具寫入資料。您可以使用標準 Amazon Redshift SQL 命令，繼續為使用者設定精細的資料表層級寫入存取控制。這樣可確保使用者只能看到自己有權存取之資料的相關子集。
+ **查詢物件**。

  您可以使用以三部分標記法表示的完整物件名稱來查詢其他資料庫物件。任何資料庫物件的完整路徑都包含三個元件：資料庫名稱、結構描述和物件名稱。您可以使用完整路徑標記法 (`database_name.schema_name.object_name`)，從任何其他資料庫存取任何物件。若要存取特定資料欄，請使用 `database_name.schema_name.object_name.column_name`。

  您也可以使用外部結構描述標記法，為另一個資料庫中的結構描述建立別名。此外部結構描述會參照另一個資料庫和結構描述配對 查詢可以使用外部結構描述標記法 (`external_schema_name.object_name`)，來存取其他資料庫物件。

  在相同的唯讀查詢中，您可以查詢各種資料庫物件，例如使用者資料表、一般檢視、具體化視觀表，以及來自其他資料庫的近期繫結檢視。
+ **管理許可**。

  有權存取 Amazon Redshift 叢集中任何資料庫之物件的使用者，都可以查詢這些物件並將資料寫入。您可以使用 [GRANT](r_GRANT.md) 命令將權限授予使用者和使用者群組。當使用者不再需要特定資料庫物件的存取權時，您也可以使用 [REVOKE](r_REVOKE.md) 命令撤銷權限。
+ **使用中繼資料和 BI 工具。**

  您可以建立外部結構描述，參照同一個 Amazon Redshift 叢集內另一個 Amazon Redshift 資料庫中的結構描述。如需詳細資訊，請參閱 [CREATE EXTERNAL SCHEMA](r_CREATE_EXTERNAL_SCHEMA.md) 命令。

  建立外部結構描述參照之後，Amazon Redshift 會顯示 [SVV\$1EXTERNAL\$1TABLES](r_SVV_EXTERNAL_TABLES.md) 和 [SVV\$1EXTERNAL\$1COLUMNS](r_SVV_EXTERNAL_COLUMNS.md) 中其他資料庫結構描述下的資料表，以利工具探索中繼資料。

  若要整合跨資料庫查詢與 BI 工具，您可以使用下列系統檢視。這些檢視可協助您檢視 Amazon Redshift 叢集上已連線資料庫和其他資料庫中物件中繼資料的相關資訊。

  以下是顯示 Amazon Redshift 叢集中所有 Amazon Redshift 物件及所有資料庫的外部物件的系統檢視：
  + [SVV\$1ALL\$1COLUMNS](r_SVV_ALL_COLUMNS.md)
  + [SVV\$1ALL\$1SCHEMAS](r_SVV_ALL_SCHEMAS.md)
  + [SVV\$1ALL\$1TABLES](r_SVV_ALL_TABLES.md)

  以下是顯示 Amazon Redshift 叢集中所有資料庫的所有 Amazon Redshift 物件的系統檢視：
  + [SVV\$1REDSHIFT\$1COLUMNS](r_SVV_REDSHIFT_COLUMNS.md)
  + [SVV\$1REDSHIFT\$1DATABASES](r_SVV_REDSHIFT_DATABASES.md)
  + [SVV\$1REDSHIFT\$1FUNCTIONS](r_SVV_REDSHIFT_FUNCTIONS.md)
  + [SVV\$1REDSHIFT\$1SCHEMAS](r_SVV_REDSHIFT_SCHEMAS.md)
  + [SVV\$1REDSHIFT\$1TABLES](r_SVV_REDSHIFT_TABLES.md)

**Topics**
+ [考量事項](cross-database_usage.md)
+ [限制](cross-database_limitation.md)
+ [跨資料庫查詢範例](cross-database_example.md)
+ [搭配查詢編輯器使用跨資料庫查詢](cross-database_console.md)