
# 与LakeFormation数据类型映射关系
DataArts Fabric SQL中定义的数据类型与LakeFormation中的类型存在明确的映射关系，如下表所示：
表1DataArts Fabric SQL与LakeFormation数据类型映射关系 
| 数据类型    | DataArts Fabric 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              | -                                                                                |
| 复杂类型    | ARRAY\<...\>                                                                             | 数组类型，下标从1开始，支持多维和嵌套。                                                                                    | array               | -                                                                                |
| 复杂类型    | STRUCT\<...\>                                                                            | STRUCT类型，支持嵌套。                                                                                          | struct              | -                                                                                |
   
