

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

# 使用 Athena 查詢 Amazon S3 資料表
<a name="s3-tables-integrating-athena"></a>

Amazon Athena 是一種互動式查詢服務，可讓您使用標準 SQL 直接在 Amazon S3 中分析資料。如需詳細資訊，請參閱《Amazon Athena 使用者指南》**中的[什麼是 Amazon Athena？](https://docs.aws.amazon.com//athena/latest/ug/what-is.html)。

將資料表儲存貯體與 AWS 分析服務整合後，您可以使用 Athena 在 S3 資料表上執行資料定義語言 (DDL)、資料處理語言 (DML) 和資料查詢語言 (DQL) 查詢。如需如何查詢資料表儲存貯體中資料表的詳細資訊，請參閱《Amazon Athena 使用者指南》**中的[註冊 S3 資料表儲存貯體目錄](https://docs.aws.amazon.com//athena/latest/ug/gdc-register-s3-table-bucket-cat.html)。

您也可以從 Amazon S3 主控台，在 Athena 中執行查詢。

**重要**  
建立資料表時，請務必在資料表名稱和資料表定義中，全部都使用小寫字母。例如，確定欄的名稱都小寫。如果您的資料表名稱或資料表定義包含大寫字母，則 AWS Lake Formation 或 不支援資料表 AWS Glue Data Catalog。在這種情況下，即使您的資料表儲存貯體與 AWS 分析服務整合，Amazon Athena 等 AWS 分析服務也看不到您的資料表。  
如果您的資料表定義包含大寫字母，您在 Athena 中執行 `SELECT` 查詢時會收到下列錯誤訊息："GENERIC\_INTERNAL\_ERROR: Get table request failed: com.amazonaws.services.glue.model.ValidationException: Unsupported Federation Resource - Invalid table or column names."

## 使用 S3 主控台和 Amazon Athena
<a name="query-table-console"></a>

下列程序使用 Amazon S3 主控台存取 Athena 查詢編輯器，讓您可以使用 Amazon Athena 查詢資料表。

**注意**  
在執行下列步驟之前，請確定您已將資料表儲存貯體與此區域中的 AWS 分析服務整合在一起。如需詳細資訊，請參閱[將 Amazon S3 Tables 與 AWS 分析服務整合](s3-tables-integrating-aws.md)。

**查詢資料表**

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/) 開啟 Amazon S3 主控台。

1. 在左側導覽窗格中，選擇**資料表儲存貯體**。

1. 在**資料表儲存貯體**頁面上，選擇包含您要查詢之資料表的儲存貯體。

1. 在儲存貯體詳細資訊頁面上，選擇您要查詢之資料表名稱旁的選項按鈕。

1. 選擇**使用 Athena 查詢資料表**。

1. Amazon Athena 主控台隨即開啟，並顯示 Athena 查詢編輯器，其中提供為您載入的範例 `SELECT` 查詢。視需要為您的使用案例修改此查詢。

   在查詢編輯器中，**目錄**欄位應該填入 **s3tablescatalog/**，後面接著資料表儲存貯體的名稱，例如 **s3tablescatalog/{{amzn-s3-demo-bucket}}**。**資料庫**欄位應填入儲存資料表的命名空間。
**注意**  
如果在**目錄**和**資料庫**欄位中沒有看到這些值，請確定您已將資料表儲存貯體與此區域中的 AWS 分析服務整合在一起。如需詳細資訊，請參閱[將 Amazon S3 Tables 與 AWS 分析服務整合](s3-tables-integrating-aws.md)。

1. 若要執行查詢，選擇 **Run** (執行)。
**注意**  
如果您嘗試在 Athena 中執行查詢時收到錯誤訊息：「執行查詢的權限不足。主體對指定資源沒有任何權限」，您必須獲得資料表上必要的 Lake Formation 許可權。如需詳細資訊，請參閱[授予資料表或資料庫的 Lake Formation 許可](grant-permissions-tables.md#grant-lf-table)。
如果您在嘗試執行查詢時收到錯誤「Iceberg 無法存取請求的資源」，請前往 AWS Lake Formation 主控台，並確定您已授予自己所建立資料表儲存貯體目錄和資料庫 （命名空間） 的許可。授予這些許可權時，請勿指定資料表。如需詳細資訊，請參閱[授予資料表或資料庫的 Lake Formation 許可](grant-permissions-tables.md#grant-lf-table)。
如果您在 Athena 中執行 `SELECT` 查詢時收到下列錯誤訊息，而此訊息的肇因來自資料表名稱中有大寫字母，或資料表定義中有欄名稱："GENERIC\_INTERNAL\_ERROR: Get table request failed: com.amazonaws.services.glue.model.ValidationException: Unsupported Federation Resource - Invalid table or column names." 請確定您的資料表和欄名稱都是小寫。