ClickHouse:(二)数据类型

1.整型

        固定长度的整型分为:有符号和无符合整型

有符号整型无符号整型
类型范围类型范围
Int8
-128 : 127
UInt8
0 : 255
Int16
-32768 : 32767
UInt16
0 : 65535
Int32
-2147483648 : 2147483647
UInt32
0 : 4294967295
Int64
-9223372036854775808 : 9223372036854775807
UInt64
0:18446744073709551615

       使用场景:个数、数量、存储型id

2.浮点型

类型
Float32float
Float64double

弊端:浮点型进行计算时,会出现 四舍五入的误差

select 1-0.9

select 1.12-0.9

 

3.布尔型

        ClickHouse中没有单独的类型存储 booler,可直接使用UInt8类型,取值限制为0和1。(枚举类型)

4.Decimal

        s 为 标识 小数位

类型相当于常规类型范围
Decimal32(s)Decimal(9,9-s)有效位数1~9位
Decimal64(s)Decimal(18,9-s)有效位数1~18位
Decimal128(s)Decimal(38,9-s)有效位数1~38位

        有符号的浮点数,可在加、减和乘法运算过程中保持精度。对于除法,最低有效数字会
被丢弃(不舍入)
减法:

除法:实际 两值 相除 约等于 1.551789

5.字符串

       

类型范围
String任意长度
FixedString(N)
固定长度 N 的字符串, N 必须是严格的正自然数。读取小于N长度的字符串,会在字符串后面补空字节。读取大于N长度的字符串,直接报错

6.枚举型

        Enum 保存 'string'= integer 的对应关系
类型描述
Enum8
'String'= Int8
Enum16
'String'= Int16

用法演示:

CREATE TABLE t_enum
(
 x Enum8('hello' = 1, 'world' = 2)
)
ENGINE = TinyLog;

insert into t_enum values ('hello'),('world');
insert into t_enum values ('world');

 如果添加 除枚举之外的 字符串,就会报错,如图:

 查看枚举值对应的代码项:

 SELECT CAST(x, 'Int8') FROM t_enum;

7.时间类型

类型格式
Date
- -
Datetime
- - 日 时 : :
Datetime64
- - 日 时 : : . 亚秒

8.数组

        

类型描述
Array(T)
T 类型元素组成的数组
        T 可以是任意类型,包含数组类型。 但不推荐使用多维数组, ClickHouse 对多维数组
的支持有限。
        创建数组的方式(1):
SELECT array(1, 2) AS x, toTypeName(x) ;

        创建数据的方式(2):

select [1,2] as x ,toTypeName(x);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

只爱大锅饭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值