Amazon Redshift 與支持的 PostgreSQL 數據庫和 MySQL 數據庫之間的數據類型差異 - Amazon Redshift

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

Amazon Redshift 與支持的 PostgreSQL 數據庫和 MySQL 數據庫之間的數據類型差異

下表顯示 Amazon Redshift 資料類型對對應 Amazon RDS PostgreSQL 或 Aurora PostgreSQL 資料類型的映射。

Amazon Redshift 資料類型 RDS PostgreSQL 或 Aurora PostgreSQL 資料類型 描述
SMALLINT SMALLINT 帶正負號的 2 位元組整數
INTEGER INTEGER 帶正負號的 4 位元組整數
BIGINT BIGINT 帶正負號的 8 位元組整數
DECIMAL DECIMAL 可選擇精確度 (有效位數) 的精確數值
REAL REAL 單精度浮點數
DOUBLE PRECISION DOUBLE PRECISION 雙精度浮點數
BOOLEAN BOOLEAN 邏輯布林值 (true/false)
CHAR CHAR 固定長度的字元字串
VARCHAR VARCHAR 可變長度的字元字串 (使用者定義的限制)
DATE DATE 日曆日期 (年、月、日)
TIMESTAMP TIMESTAMP 日期和時間 (未使用時區)
TIMESTAMPTZ TIMESTAMPTZ 日期和時間 (包含時區)
GEOMETRY PostGIS GEOMETRY 空間資料

以下 RDS PostgreSQL 和 Aurora PostgreSQL 資料類型會轉換成 Amazon Redshift 中的 VARCHAR (64K):

  • JSON、JSONB

  • 陣列

  • BIT、BIT VARYING

  • BYTEA

  • 複合類型

  • 日期和時間類型間隔、時間、時間和時區

  • 列舉類型

  • 貨幣類型

  • 網路地址類型

  • 數字類型 SERIAL、BIGSERIAL、SMALLSERIAL 和 MONEY

  • 物件識別符類型

  • pg_lsn 類型

  • 偽類型

  • 範圍類型

  • 文字搜尋類型

  • TXID_SNAPSHOT

  • UUID

  • XML 類型

下表顯示 Amazon Redshift 資料類型與相應的亞馬遜 RDS MySQL 或 Aurora MySQL 資料類型的映射。

Amazon Redshift 資料類型 RDS MySQL 或 Aurora MySQL 數據類型 描述
BOOLEAN TINYINT(1) 邏輯布爾值 (true 或 false)
SMALLINT 丁寧(無符號) 帶正負號的 2 位元組整數
SMALLINT SMALLINT 帶正負號的 2 位元組整數
INTEGER SMALLINT UNSIGNED 帶正負號的 4 位元組整數
INTEGER 中等(無符號) 帶正負號的 4 位元組整數
INTEGER INT 帶正負號的 4 位元組整數
BIGINT INT UNSIGNED 帶正負號的 8 位元組整數
BIGINT BIGINT 帶正負號的 8 位元組整數
DECIMAL BIGINT UNSIGNED 可選擇精確度 (有效位數) 的精確數值
DECIMAL 十進制 (M, D) 可選擇精確度 (有效位數) 的精確數值
REAL FLOAT 單精度浮點數
DOUBLE PRECISION DOUBLE 雙精度浮點數
CHAR CHAR 固定長度的字元字串
VARCHAR VARCHAR 可變長度的字元字串 (使用者定義的限制)
DATE DATE 日曆日期 (年、月、日)
TIME TIME 時間 (不含時區)
TIMESTAMP TIMESTAMP 日期和時間 (未使用時區)
TIMESTAMP DATETIME 時間 (不含時區)
VARCHAR (4) YEAR 表示年份的可變長度字符

當時間數據超出範圍(00:00:00-24:00:00)時,將產生錯誤。

以下 RDS MySQL 和 Aurora MySQL 資料類型會轉換成 Amazon Redshift 中的 VARCHAR (64K):

  • BIT

  • BINARY

  • VARBINARY

  • 丁尼布洛布, 博客, 中環, 長斑

  • 丁字文本, 文本, 中文本, 長文本

  • ENUM

  • SET

  • SPATIAL