• Clickhouse-数据类型基本使用(二)


    1、数据类型-枚举类实现

    1. #打开客户端连接工具(-m:允许多行输入)
    2. clickhouse-click -m
    3. #创建表(枚举类的表)
    4. CREATE TABLE t_enum ( x Enum8( 'hello'=1, 'world' = 2 ) ) ENGINE TinyLog;
    5. #插入数据(多行插入)
    6. insert into t_enum values('hello'),('world');
    7. #查询
    8. select * from t_enum;
    9. #查询枚举类字符串对应的值
    10. select cast(x,'Int8') from t_enum;
    11. #根据code值进行插入
    12. insert into t_enum values(1);
    13. #根据条件查询每个具体的值
    14. select * from t_enum where x='hello';

    2、数据类型-时间类型

    Date接受年-月-日的字符串类型: 2022-05-23

    Datetime接受年-月-日 时:分:秒的字符串:2022-05-23 22:10:11

    Datetime64接受年-月-日 时:分:秒.亚秒的字符串:2022-05-23 22:10:11.66


    3、数据类型-数组:Array(T) T可以是任意类型,包含数组类型,但不建议使用多维数组,clickhouse对多维数组的支持有限。不能在MergeTree表中存储多维数组

    1. #创建数组方式
    2. select array(1,2) as x ,toTypeName(x);
    3. 效果等价
    4. select [1,2] as x ,toTypeName(x);

    4、数据类型-Nuallable(空值)

    1. #创建可为null的空值表
    2. CREATE TABLE t_null(x Int8, y Nullable(Int8)) ENGINE TinyLog;
    3. #表中插入空值
    4. INSERT INTO t_null VALUES (1, NULL), (2, 3);
    5. #进行计算
    6. SELECT x + y FROM t_null;

    使用 Nullable 几乎总是对性能产生负面影响,在设计数据库时需注意

    如何避免null值:数字类型可传无意义数值:-1

    字符串类型可以传空字符串 

    4 、字符型

    5、Decimal型

    7、布尔型

    8、浮点型

    9、整型

    以上几种比较简单的操作,不一一介绍,具体参考官方api文档:数据类型

  • 相关阅读:
    DC电源模块选用电容滤波器的注意事项
    文本挖掘day6 基于文本挖掘的化工事故致因网络分析
    反射学习总结
    智能优化之遗传算法
    基于Java+SpringBoot+Thymeleaf+Mysql在线考试系统设计与实现
    Linux常用命令
    多线程(基础)
    VMware-KVM安装
    浙大版《数据结构学习与实验指导(第2版)》笛卡尔树
    前端 | 如何使用 css 实现居中效果
  • 原文地址:https://blog.csdn.net/qq_39243221/article/details/124917556