ClickHouse常用数据类型与其他组件类型对比

时间:2024-03-19 12:23:16

与其他组件数据类型对比

MySQL Hive ClickHouse
byte TINYINT Int8
short SMALLINT Int16
int INT Int32
long BIGINT Int64
varchar STRING String
timestamp TIMESTAMP DateTime
float FLOAT Float32
double DOUBLE Float64
boolean BOOLEAN -

注意点:

ClickHouse中有无穷大,无穷小,非数字值三种特殊的浮点数。

ClickHouse常用数据类型与其他组件类型对比

inf表示无穷大,因为在ClickHouse中0表示无穷小,一个数除以无穷小自然是无穷大。

ClickHouse常用数据类型与其他组件类型对比

0/0的结果不是一个数值可以表示的,所以是nan(非数值)。

枚举

ClickHouse中没有布尔型,一般使用枚举类型表示。

ClickHouse的枚举类型有两种:Enum8和Enum16类型。枚举类型保存’string’=integer的对应关系。

Enum8:‘String’=Int8

Enum16:‘String’=Int16

例子:字符串要用单引号括起来
ClickHouse常用数据类型与其他组件类型对比

数组

ClickHouse除了枚举类型,还有数组类型Array(T):由T类型元素组成的数组。

T可以是所有数据类型,包括数组类型。但是ClickHouse对多维数组的支持和对多表联查的支持差不多。

数组可以使用[]简写代替。

ClickHouse常用数据类型与其他组件类型对比

元组

如果存进去的数据每个都有自己的数据类型,那就可以使用元组类型。
ClickHouse常用数据类型与其他组件类型对比