Amazon Athena のデータ型
CREATE TABLE を実行するときは、列名と、各列に含めることができるデータ型を指定します。作成するテーブルは、AWS Glue Data Catalog に保存されます。
他のクエリエンジンとの相互運用性を促進するため、Athena は CREATE TABLE などの DDL ステートメントに Apache HiveSELECT、CTAS、および INSERT INTO などの DML クエリの場合、Athena は Trino
| DDL | DML | 説明 |
|---|---|---|
| BOOLEAN | 値は、true および false です。 |
|
| TINYINT | 2 の補数形式の 8 ビット符号付き整数で、最小値は -27、最大値は 27-1 です。 | |
| SMALLINT | 2 の補数形式の 16 ビット符号付き整数で、最小値は -215、最大値は 215-1 です。 | |
| INT, INTEGER | 2 の補数形式の 32 ビット符号付き整数で、最小値は -231、最小値は -263、最大値は 231-1 です。 | |
| BIGINT | 2 の補数形式の 64 ビット符号付き整数で、最小値は -263、最小値は -263、最大値は 263-1 です。 | |
| FLOAT | REAL | 32 ビットの符号付き単精度浮動小数点数です。範囲は、1.402846638528807e-45 から 3.40282348528860e+38 (正または負) です。IEEE 浮動小数点数演算標準 (IEEE 754) に従います。 |
| DOUBLE | 64 ビットの符号付き倍精度浮動小数点数です。範囲は、4.94065645841246544e-324d から 1.79769313486231570e+308d (正または負) です。IEEE 浮動小数点数演算標準 (IEEE 754) に従います。 | |
DECIMAL(precision, scale) |
は桁の合計数です。 (オプション) は小数点以下の桁数で、デフォルトは 0 です。たとえば、decimal(11,5)、decimal(15) のタイプ定義を使用します。precision の最大値は 38 で、scale の最大値も 38 です。 |
|
CHAR, CHAR(length) |
固定長の文字データで、char(10) のように、1 から 255 の長さが指定されています。 詳細については、「CHAR Hive データ型 |
|
| STRING | VARCHAR | 可変長文字データです。 |
VARCHAR(length) |
最大読み取り長が設定された可変長文字データです。文字列は、読み取り時に指定された長さで切り捨てられます。基盤となるデータ文字列がそれより長い場合、基盤となるデータ文字列はそのまま変更されません。 | |
| BINARY | VARBINARY | 可変長バイナリデータです。 |
| 利用不可 | TIME | ミリ秒精度の時刻です。 |
| 利用不可 | TIME(precision) |
特定の精度の時刻です。TIME(3) は TIME と同等です。 |
| 利用不可 | TIME WITH TIME ZONE | タイムゾーン内の時刻です。タイムゾーンは、UTC からのオフセットとして指定する必要があります。 |
| DATE | 年、月、日を使用したカレンダー日付です。 | |
| TIMESTAMP | TIMESTAMP WITHOUT TIME ZONE | カレンダー日付とミリ秒精度の時刻です。 |
| 利用不可 | TIMESTAMP(precision), TIMESTAMP(precision) WITHOUT TIME ZONE |
カレンダー日付と特定の精度の時刻です。TIMESTAMP(3) は TIMESTAMP と同等です。 |
| 利用不可 | TIMESTAMP WITH TIME ZONE | タイムゾーン内のカレンダー日付と時刻です。タイムゾーンは、UTC からのオフセット、IANA タイムゾーン名、または UTC、UT、Z、GMT を使用して指定できます。 |
| 利用不可 | TIMESTAMP(precision) WITH TIME ZONE |
タイムゾーン内のカレンダー日付と特定の精度の時刻です。 |
| 利用不可 | INTERVAL YEAR TO MONTH | 1 か月以上の間隔です。 |
| 利用不可 | INTERVAL DAY TO SECOND | 1 秒、1 分、1 時間、または 1 日以上の間隔です。 |
ARRAY<element_type> |
ARRAY[element_type] |
値の配列です。すべての値は同じデータ型である必要があります。 |
MAP<key_type, value_type> |
MAP(key_type, value_type) |
キーを使用して値を検索できるマップです。すべてのキーは同じデータ型で、すべての値は同じデータ型である必要があります。例えば、map<string, integer> と指定します。 |
STRUCT<field_name_1:field_type_1, field_name_2:field_type_2, …> |
ROW(field_name_1 field_type_1, field_name_2 field_type_2, …) |
名前が付けられたフィールドとその値からなるデータ構造です。 |
| 利用不可 | JSON | JSON 値型です。これは、JSON オブジェクト、JSON 配列、JSON 番号、JSON 文字列、true、false、または null にすることができます。 |
| 利用不可 | UUID | UUID (Universally Unique IDentifier) です。 |
| 利用不可 | IPADDRESS | IPv4 または IPv6 アドレスです。 |
| 利用不可 | HyperLogLog |
これらのデータ型は、近似関数の内部をサポートします。各型の詳細については、Trino ドキュメント内の対応する項目へのリンクを参照してください。 |
| P4HyperLogLog |
||
| SetDigest |
||
| QDigest |
||
| TDigest |
||