在clickhouse中,我们创建表的时候需要涉及到对字段定义类型,这些类型就是clickhouse能支持的基本类型。这些基本类型其实都存储在clickhouse里面的system库下面的data_type_families表里面。我们可以直接查询出来clickhouse支持的基本类型,查询语句是:
select * from system.data_type_families;
查询之后的结果是:
这里clickhouse支持的数据类型总共大概有134种,示例图如下:
但是其实我们怎么用呢?我们在使用的时候其实只关系后面的alias_to部分,这里可以看到有许多重复的,因此这里我们把alias_to进行下去重:
select DISTINCT(alias_to) from system.data_type_families;
此时能筛选出来的就只有差不多18种了,示例如下:
Bool IPv6 IPv4 Enum FixedString String Float64 UInt8 UInt16 DateTime Decimal Int32 Float32 UInt64 UInt32 Int8 Int64 Int16
那么这18种我们如何使用呢,网上有一张图的对应,如下图:
上图主要是mysql,hive,clickhouse3种数据库的不同基本类型转换,在实际的过程中我们根据上图的表进行转换就可以了,就能实现各个数据源之间的转换。下面我们举个案例,创建一张user表,在mysql里面我们创建语句是:
create table users( id int(11), name varchar(20), age int(1) )
那么在clickhouse里面创建的语句是:
create table test.users( id Int32, name String, age Int32 )ENGINE=TinyLog()
就可以看到这里创建成功了:
最后使用DBeaver的时候,我们可以直接在连接的数据库里面查看到具体支持的数据类型,示例如下:
以上就是关于clickhouse基础数据类型的介绍。
还没有评论,来说两句吧...