与LakeFormation数据类型映射关系
DataArtsFabric SQL中定义的数据类型与LakeFormation中的类型存在明确的映射关系,如下表所示:
数据类型 |
DataArtsFabric SQL数据类型名称 |
描述 |
LakeFormation数据类型名称 |
备注 |
---|---|---|---|---|
数值类型 |
SMALLINT |
小范围整数,别名为INT2。 |
smallint |
-32,768 ~ +32,767 |
INTEGER |
常用的整数,别名为INT4。 |
int |
-2,147,483,648 ~ +2,147,483,647 |
|
BIGINT |
大范围的整数,别名为INT8。 |
bigint |
-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 |
|
NUMERIC[(p[,s])], DECIMAL[(p[,s])] |
精度p取值范围为[1,1000],标度s取值范围为[0,p]。 |
decimal |
1≤p≤38, 0≤s≤p; p未指定时,报错提示超过精度范围。 |
|
REAL,FLOAT4 |
单精度浮点数,不精准。 |
float |
6位十进制数字精度。 |
|
DOUBLE PRECISION, FLOAT8 |
双精度浮点数,不精准。 |
double |
15位十进制数字精度。 |
|
FLOAT[(p)] |
浮点数,不精准。精度p取值范围为[1,53]。 如不指定精度,则默认为DOUBLE PRECISION表示。 |
float/double |
1≤p<25时,存储为float类型; 25≤p≤53时,存储为double类型。 |
|
DEC[(p[,s])] |
精度p取值范围为[1,1000],标度s取值范围为[0,p]。 |
decimal |
1≤p≤38, 0≤s≤p; p未指定时,报错提示超过精度范围。 |
|
INTEGER[(p[,s])] |
精度p取值范围为[1,1000],标度s取值范围为[0,p]。 |
decimal |
1≤p≤38, 0≤s≤p; p未指定时,报错提示超过精度范围。 |
|
布尔类型 |
BOOLEAN |
布尔类型:true、false、null |
boolean |
- |
字符类型 |
CHAR(n),CHARACTER(n),NCHAR(n) |
定长字符串,n是指字符长度不足填充空格,n小于等于255。 |
char |
1≤n≤255;n未指定时,默认为1。 |
VARCHAR(n),CHARACTER VARYING(n) |
变长字符串,n是指字符长度,n小于等于65535。 |
varchar |
1≤n≤65535;n未指定时,默认为65535。 |
|
TEXT |
变长字符串。 |
string |
- |
|
日期/时间类型 |
DATE |
记录日期。 |
date |
如果数据包含时间信息,仅截断存储日期数据 。 |
TIMESTAMP[(p)] [WITHOUT TIME ZONE] |
日期和时间,不带时区信息。 p表示小数点后的精度,取值范围为0~6。 |
timestamp |
实际存储精度固定为6,不受p大小影响; p>6时,提示精度降为6。 |
|
二进制类型 |
BYTEA |
变长的二进制字符串。 |
binary |
- |