1、前言概述
1.1、doris建表模板
CREATE [EXTERNAL] TABLE [IF NOT EXISTS] [DATABASE.]table_name
(column_definition1[,column_deinition2,......][,index_definition1,[,index_definition2,]]
)
[ENGINE = [olap|mysql|broker|hive]]
[key_desc]
[COMMENT "table comment"];
[partition_desc]
[distribute_desc]
[rollup_index]
[PROPERTIES("key"="value",...)]
[BROKER PROPERTIES("key"="value",...)];
1.2、doris建表结构
doris建表操作包含以下部分:
- 内外部表定义
- 数据列定义
- 索引字段定义
- 数据模型定义
- 执行引擎定义
- 数据分区定义
- 数据分桶定义
- 表属性定义
- broker属性定义
本篇博客我们来学习数据列定义部分,数据列定义部分包括列字段、列类型、列属性、列描述,在这里我们着重讲解列类型以及列属性。
2、doris数据类型
2.1、数据类型概览
doris数据类型包含:布尔类型、整数型、浮点数型、日期时间类型、字符文本类型、去重类型、结构化类型、网址类型等,以下是doris所有数据类型清单。
数据类型 | 类型描述 |
boolean | 布尔类型:0代表false,1代表true |
tinyint | 1字节有符号整数,范围[-128, 127] |
smallint | 2字节有符号整数,范围[-32768, 32767] |
int | 4字节有符号整数,范围[-2147483648, 2147483647] |
bigint | 8字节有符号整数,范围[-9223372036854775808, 9223372036854775807] |
largeint | 16字节有符号整数,范围[-2^127 + 1 ~ 2^127 - 1] |
float | 4字节浮点数 |
double | 8字节浮点数 |
decimal | 高精度定点数,M代表有效数字位数,D代表小数位数,默认值为 DECIMAL(9, 0) |
date | 日期类型,目前的取值范围是['0000-01-01', '9999-12-31'], 默认的打印形式是'yyyy-MM-dd' |
datetime | 日期时间类型,小数位数取值范围是[0, 6],即最多支持6位小数(微秒)。不设置时为0。 取值范围是['0000-01-01 00:00:00[.000000]', '9999-12-31 23:59:59[.999999]']. 打印的形式是'yyyy-MM-dd HH:mm:ss.SSSSSS' |
char | 定长字符串,定长字符串的字节长度范围是1-255 |
varchar | 变长字符串,变长字符串的字节长度范围是1-65533。 |
string | 变长字符串,默认支持1MB,可调大到2G,可通过be配置`string_type_length_soft_limit_bytes`调整。 String类型只能用在value 列ÿ |