Clickhouse的基本sql语句

1,建库语句

bash 复制代码
create database if not exists mytestdb on cluster default_cluster;

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

2,建表

bash 复制代码
-- 创建复制表
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,查询数据

bash 复制代码
select * from mytestdb.test_log3_all

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

通常都可以使用这个引擎:

ReplicatedMergeTree(/clickhouse/tables/{shard}/default/test','{replica}');

4,删除数据

bash 复制代码
alter table xbtx.xbtx_func_tb on cluster default_cluster delete where app_id='com.sinosure.xbt';

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

5,更新数据

bash 复制代码
alter table xbtx.xbtx_func_tb on cluster default_cluster update func_name='公文' where id='gongwen';

6,新增数据

bash 复制代码
insert into xbtx.xbtx_func_tb_all(id,func_name,app_id) values('xxxx','xxxx','xxxx');

7,删除表

bash 复制代码
-- 删除本地表:
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

相关推荐
2501_941805931 天前
在大阪智能零售场景中构建支付实时处理与高并发顾客行为分析平台的工程设计实践经验分享
数据库
李慕婉学姐1 天前
【开题答辩过程】以《基于JAVA的校园即时配送系统的设计与实现》为例,不知道这个选题怎么做的,不知道这个选题怎么开题答辩的可以进来看看
java·开发语言·数据库
珠海西格电力1 天前
零碳园区有哪些政策支持?
大数据·数据库·人工智能·物联网·能源
数据大魔方1 天前
【期货量化实战】日内动量策略:顺势而为的短线交易法(Python源码)
开发语言·数据库·python·mysql·算法·github·程序员创富
Chasing Aurora1 天前
数据库连接+查询优化
数据库·sql·mysql·prompt·约束
倔强的石头_1 天前
【金仓数据库】ksql 指南(六)—— 创建与管理用户和权限(KingbaseES 安全控制核心)
数据库
小熊officer1 天前
Python字符串
开发语言·数据库·python
渐暖°1 天前
JDBC直连ORACLE进行查询
数据库·oracle
萧曵 丶1 天前
Next-Key Lock、记录锁、间隙锁浅谈
数据库·sql·mysql·mvcc·可重复读·幻读
做cv的小昊1 天前
【TJU】信息检索与分析课程笔记和练习(7)数据库检索—Ei
数据库·笔记·学习·全文检索