Verticaで「サポートされているデータ型」と「プロジェクションのNULL値の並び順」をご紹介します。

※Verticaのテーブルは実データを持たない論理スキーマであり、実データはプロジェクションに格納されています。プロジェクションは自動でテーブルデータを最適な形でソート、圧縮して保持します。以下の「NULL 並び順」は、プロジェクションにNULL値が含まれる場合の並び順を示しています。

文字列型

データ型列のサイズ ( バイト )説明NULL 並び順
CHAR1 ~ 65,000固定長の文字および特殊文字を保持します。
最大長は65,000バイトです。最小サイズは1バイト(デフォルト)です。
最後
VARCHAR1 ~ 65,000可変長の文字および特殊文字を保持します。
最大長は65,000バイトです。最小サイズは1バイトです。デフォルトは80バイトです
最後
LONG VARCHAR1 ~ 32,000,000可変長の英字、数字、記号を保持します。最後

整数型

データ型列のサイズ ( バイト )説明NULL 並び順
INTEGER8最小値/最大値:-9,223,372,036,854,775,807から9,223,372,036,854,775,807
※-9,223,372,036,854,775,808はNULLを表すために予約されています。
先頭
INT8最小値/最大値:-9,223,372,036,854,775,807から9,223,372,036,854,775,807
※-9,223,372,036,854,775,808はNULLを表すために予約されています。
先頭
BIGINT8最小値/最大値:-9,223,372,036,854,775,807から9,223,372,036,854,775,807
※-9,223,372,036,854,775,808はNULLを表すために予約されています。
先頭
INT88最小値/最大値:-9,223,372,036,854,775,807から9,223,372,036,854,775,807
※-9,223,372,036,854,775,808はNULLを表すために予約されています。
先頭
SMALLINT8通常サイズの整数。
最小値/最大値:-9,223,372,036,854,775,807から9,223,372,036,854,775,807
※-9,223,372,036,854,775,808はNULLを表すために予約されています。
先頭
TINYINT8通常サイズの整数。
最小値/最大値:-9,223,372,036,854,775,807から9,223,372,036,854,775,807
※-9,223,372,036,854,775,808はNULLを表すために予約されています。
先頭
DECIMAL8以上指定された精度とスケールの数値を正確に表現できる数値型です。
指定できる最大精度は1024です。
デフォルトの精度は37、スケールは15です。
先頭
NUMERIC8以上指定された精度とスケールの数値を正確に表現できる数値型です。
指定できる最大精度は1024です。
デフォルトの精度は37、スケールは15です。
先頭
NUMBER8以上指定された精度とスケールの数値を正確に表現できる数値型です。
指定できる最大精度は1024です。
デフォルトの精度は38、スケールは0です。
先頭
MONEY8以上指定された精度とスケールの数値を正確に表現できる数値型です。
指定できる最大精度は1024です。
デフォルトの精度は18、スケールは4です。
先頭

浮動小数点型

データ型列のサイズ ( バイト )説明NULL 並び順
DOUBLE PRECISION8列に格納されたデータが近似している場合、FLOATを使用します。
64ビットのIEEE-754浮動小数点形式で格納されます。
指定できる最大精度は53です。
最後
FLOAT8列に格納されたデータが近似している場合、FLOATを使用します。
64ビットのIEEE-754浮動小数点形式で格納されます。
指定できる最大精度は53です。
最後
FLOAT(n)8列に格納されたデータが近似している場合、FLOATを使用します。
64ビットのIEEE-754浮動小数点形式で格納されます。
指定できる最大精度は53です。
n を指定する場合、1 から 53 までの値にする必要があります。
最後
FLOAT88列に格納されたデータが近似している場合、FLOATを使用します。
64ビットのIEEE-754浮動小数点形式で格納されます。
指定できる最大精度は53です。
最後
REAL8列に格納されたデータが近似している場合、FLOATを使用します。
64ビットのIEEE-754浮動小数点形式で格納されます。
指定できる最大精度は53です。
最後

日付/時刻型

データ型列のサイズ ( バイト )説明NULL 並び順
DATE8DATEには、年、月および日が含まれます。
サポートされる範囲は22500983562558975-11-30 BCから22500983562558974-02-02 ADです。
YYYY-MM-DDの形式で表示されます。
先頭
DATETIME8日付および時刻の組み合わせです。
サポートされる範囲は290279-12-22 19:59:05.224194 BCから294277-01-09 04:00:54:775806 ADです。
先頭
SMALLDATETIME8日付および時刻の組み合わせです。
サポートされる範囲は290279-12-22 19:59:05.224194 BCから294277-01-09 04:00:54:775806 ADです。
先頭
TIME8時刻を表示します。
サポートされる範囲は00:00:00.00から23:59:60.999999です。
先頭
TIME WITH TIMEZONE8TIME型を指定したタイムゾーンの時間に変換します。先頭
TIMESTAMP8日付および時刻の組み合わせです。
サポートされる範囲は290279-12-22 19:59:05.224194 BCから294277-01-09 04:00:54:775806 ADです。
先頭
TIMESTAMP WITH TIMEZONE8TIMESTAMP型を指定したタイムゾーンの時間に変換します。先頭
INTERVAL8期間を格納するデータ型です。先頭

バイナリ型

データ型列のサイズ ( バイト )説明NULL 並び順
BINARY1 ~ 65,000固定長のバイナリ文字列を保持します。
最大長は65,000バイトです。
最後
VARBINARY1 ~ 65,000可変長のバイナリ文字列を保持します。
最大長は65,000バイトです。
最後
LONG VARBINARY1 ~ 32,000,000可変長rawバイトのデータを保持します。最後
BYTEA1 ~ 65,000可変長のバイナリ文字列を保持します。
最大長は65,000バイトです。
最後
RAW1 ~ 65,000可変長のバイナリ文字列を保持します。
最大長は65,000バイトです。
最後

ブーリアン型

データ型列のサイズ ( バイト )説明NULL 並び順
BOOLEAN1TRUE /FALSEまたはNULLを保持します。最後

空間型

データ型列のサイズ ( バイト )説明NULL 並び順
GEOMETRY1 ~ 10,000,000デカルト座標で定義された(x、y)で表される座標情報を保持します。最後
GEOGRAPHY1 ~ 10,000,000緯度と経度の角度を示した座標情報を保持します。最後

UUID型

データ型列のサイズ ( バイト )説明NULL 並び順
UUID16Universally Unique Identifier(UUID)を保持します。先頭

注意点

Verticaは、他のデータベースからの移行を簡単にするため、別名のデータ型がサポートされています。
例えば、INT,INTEGER,INT8,SMALLINT,TINYINT,BIGINTで作成したテーブルは、全てINTで作成されます。
別名のデータ型がサポートされることで、移行元のCREATE TABLE文をほぼ改修せずに、利用することができます。
別名のデータ型実際に定義されるデータ型
INT
INTEGER
INT8
SMALLINT
TINYINT
BIGINT
INT
NUMERIC
DECIMAL
NUMBER
MONEY
NUMERIC
DOUBLE PRECISION
FLOAT
FLOAT(n)
FLOAT8
REAL
FLOAT
TIMESTAMP
DATETIME
SMALLDATETIME
TIMESTAMP
VARBINARY
BYTEA
RAW
VARBINARY


 

参考情報

プロジェクションに関しては「プロジェクションの概要」もご覧ください。

検証バージョンについて

この記事の内容はVertica 9.1で確認しています。