• Clickhouse的基本sql语句


    1,建库语句

    create database if not exists mytestdb on cluster default_cluster;
    

    注意:用户在集群中创建数据库或者表时使用ON CLUSTER语句,保证各个ClickHouse节点上数据库、表的元信息相同。

    2,建表

    -- 创建复制表
    create table mytestdb.test_log3 on cluster default_cluster(id UInt32,user_id String,app_id String,create_time String) ENGINE=ReplicatedMergeTree(‘/clickhouse/tables/{shard}/mytestdb.test_log3’,’{replica}) order by id;
    
    -- 创建分布式表
    create table mytestdb.test_log3_all on cluster default_cluster as mytestdb.test_log3 ENGINE=Distributed(‘default_cluster’,’mytestdb’,’test_log3’,rand());
    
    

    注意:需要同时建本地表和分布式表,建表时需要加cluster

    3,查询数据

    select * from mytestdb.test_log3_all
    

    注意: 查询写入都用分布式表, 写入也可以用本地表,结合replied复制的特性也会自己在副本表复制数据的。

    通常都可以使用这个引擎:
    ReplicatedMergeTree(/clickhouse/tables/{shard}/default/test’,’{replica}’);

    4,删除数据

    alter table xbtx.xbtx_func_tb on cluster default_cluster delete where app_id=’com.sinosure.xbt’;
    

    注意:删除时不要操作分布式表,操作本地表

    5,更新数据

    alter table xbtx.xbtx_func_tb on cluster default_cluster update func_name=’公文’ where id=’gongwen’;
    

    6,新增数据

    insert into xbtx.xbtx_func_tb_all(id,func_name,app_id) values('xxxx','xxxx','xxxx');
    

    7,删除表

    -- 删除本地表:
    drop table mytestdb.xbtx_app_log_tb on cluster default_cluster no delay;
    -- 删除分布式表:
    drop table mytestdb.xbtx_app_log_tb_all on cluster default_cluster no delay;
    

    注意: 删除表时需要加on cluster

  • 相关阅读:
    054、Python 函数的概念以及定义
    C# ORM框架,freesql,mysql数据库
    计算机指令
    《棒球英豪》:青春球场·棒球1号位
    项目管理之5W2H项目定义法
    企业内部网络安全四大威胁,如何应对?
    【LeetCode-简单题】383. 赎金信
    Java中的反射
    Tableau/Power BI 是什么
    Java 消息策略的实现 - Kafak 是怎么设计的
  • 原文地址:https://blog.csdn.net/qiaosaifei/article/details/139825297