テーブル、データベース、および列の名前 - Amazon Athena

「翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。」

テーブル、データベース、および列の名前

Athena での命名には以下のヒントを参考にしてください。

Athena のテーブル名とテーブルの列名は小文字にする必要があります。

Apache Spark を使用する場合は、テーブル名とテーブルの列名を小文字にする必要があります。Athena では大文字と小文字を区別せず、テーブル名と列名を小文字に変換しますが、Spark には最初から小文字のテーブル名と列名が必要です。

列名 (mixedCase など) または大文字の列名を含むクエリは機能しません。profileURI

特殊文字

アンダースコア (_) を除く特殊文字はサポートされていません。詳細については、Apache Hive LanguageManual DDL ドキュメントを参照してください。

重要

アンダースコアを除く特殊文字を含むテーブル、ビュー、データベース、または列の名前は、バックティック (`) 文字で囲むことで作成できますが、それを参照する後続の DDL または DML クエリは失敗する可能性があります。

アンダースコアで始まる名前

テーブルを作成するときは、バックティックを使用してアンダースコアで始まるテーブル名、ビュー名、列名を囲みます。次に例を示します。

CREATE EXTERNAL TABLE IF NOT EXISTS `_myunderscoretable`( `_id` string, `_index` string) LOCATION 's3://my-athena-data/'

数字で始まるテーブル、ビュー、または列の名前

SELECT、または CTAS クエリを実行するときは、数字で始まるテーブル、ビュー、列名などの識別子を引用符で囲みます。VIEW次に例を示します。

CREATE OR REPLACE VIEW "123view" AS SELECT "123columnone", "123columntwo" FROM "234table"

予約語

Athena の特定の予約語は、エスケープする必要があります。DDL ステートメントで予約キーワードをエスケープするには、バックティック (`) で囲みます。SQL の SELECT ステートメントや ビュー のクエリで予約キーワードをエスケープするには、二重引用符 ('') で囲みます。

詳細については、「予約キーワード」を参照してください。