0%

clickHouse基本数据类型

ClickHouse基本数据类型

整型

分为有符号和无符号

有符号

  • Int8
  • Int16
  • Int32
  • Int64

无符号

  • UInt8
  • UInt16
  • UInt32
  • UInt64

浮点型

  • Float32
  • Float64

字符串

分为可变字符串和定长字符串

变长字符串 String

字符串可以任意长度的。它可以包含任意的字节集,包含空字节。

定长字符串 FixedString(N)

固定长度N的字符串,N必须是严格正数的自然数。当服务器读取包含较少字节的字符串(例如,作为在INSERT查询中传递的输入)时,通过在右侧附加空字节,字符串被填充为N个字节。当服务器读取包含更多字节的字符串时,将返回错误消息。当服务器写入一个字符串(例如,作为SELECT查询的输出)时,空字节不会从字符串末尾删除,而是输出。

日期 Date

一个Date。以1970-01-01(无符号)以来的天数存储在两个字节中。允许在Unix Epoch刚刚开始之后将值存储到编译阶段(目前,日期到2038年,但可能扩展到2106)由常量定义的上限。最小值输出为0000-00-00。

日期存储没有时区。

时间戳 DateTime

日期与时间。以四个字节存储为Unix时间戳(无符号)。允许将值存储在与日期类型相同的范围内。最小值输出为0000-00-00 00:00:00。时间储存精度高达1秒(不闰秒)。

枚举

  • Enum8
  • Enum16

Enum8或Enum16。存储为Int8或Int16的一组枚举字符串值。例:

Enum8(’hello’= 1,’world’= 2)

数组 Array(T)

T 类型的数组。T型可以是任何类型,包括数组。我们不推荐使用多维数组,因为它们不被很好的支持(例如,除了内存表之外,你不能在多维数组中存储多维数组)。

元组(T1,T2,…)

每个元素都有单独的类型

嵌套的数据结构