Clickhouse的数据类型
clickhouse作为分析型数据库,clickhouse提供了许多数据类型,它们可以划分为基础类型、复合类型和特殊类型。
基础类型
基础类型只有数值、字符串和时间3中类型
数值类型
- Int:Int8,Int16,Int32和Int64
- Uint:Uint8,Uint16,Uint32,Uint64
- Float:Float32 (有效精度7位),Float64(有效精度16),clickhouse的浮点数支持正无穷、负无穷以及非数字的表达方式
- Decimal Decimal32,Decimal(64),Decimal(128)
字符串类型
- String
- FixedString,不足位置使用Null填充
- UUID 数据库主键类型
时间类型
- DateTime 时分秒,精确到秒
- DateTime64 亚秒
- Date 天
复合类型
数组、元组、枚举和嵌套4种复合类型
- 数组元素类型相同
- 元组元素类型可以不同
- Enum固定使用(String:Int)Key/Value键值对的形式定义数据。出于性能考虑,后续对于枚举的所有操作中,会使用int类型的Value值
- Nested 嵌套,每个字段的嵌套层级只支持一层。嵌套的本质是一种多维数组结构
特殊类型
- Nullable ,只能和基础类型搭配使用,不能用于数组和元组这些复合类型,也不能作为索引字段;其次,应该慎用Nullable类型,包括Nullable的数据表,不然会使查询和写入性能变慢。
- Domain,域名 分为IPV4和IPV6,支持格式检查以及更好的性能
数据库
create databa