ClickHouse Sql

删除数据

  • [ON CLUSTER cluster]为可选项,只删除本地机器的可不加,一般地,我们都是要加的
  • [TEMPORARY] 临时表 关键字

1. 删除库

删除库中所有表,然后删除库

DROP DATABASE [IF EXISTS] db [ON CLUSTER cluster]

2. 删除表/视图

删除【本地表】、【分布表】,立即删除,删除后不可写入了,因为没有表元数据了。后重建表,不会报错。

DROP [TEMPORARY] TABLE [IF EXISTS] [db.]name [ON CLUSTER cluster]
DROP VIEW [IF EXISTS] [db.]name [ON CLUSTER cluster]

clickhouse默认的库引擎是原子数据库引擎
删除【复制表】后重建同名表,会出现创建失败提示,因为 复制表的引擎是ReplicatedMergeTree引擎族,需要zk路径和备份名这俩参数。删除后不会立即删除复制(备份)数据,默认480s后删除。所以立马重建的话可能会报创建失败。避免这个报错可使用Ordinary表引擎,可使用uniq ZK路径,也可修改如下默认的480s参数:

-- config.xml
<database_atomic_delay_before_drop_table_sec>480</database_atomic_delay_before_drop_table_sec>

3. 清空表

truncate 表相对delete 表的优点是:使用的系统和事务日志资源少
特点是:truncate 表后,表和表的索引讲重新设置成初始大小

TRUNCATE TABLE [IF EXISTS] [db.]name [ON CLUSTER cluster]

4. 指定命中数据删除

delete 表的特点是:可以表达式删除,而不是全表全部行删除

-- 不加where就和 truncate 一样的效果了
delete table database.table
-- 指定条件删除
delete table database.table where exp_function

5. 删除字典

DROP DICTIONARY [IF EXISTS] [db.]name

6. 删除用户

删除多个用户,用户名按,分割

DROP USER [IF EXISTS] name [,...] [ON CLUSTER cluster_name]

7. 删除用户的角色(权限组)

DROP ROLE [IF EXISTS] name [,...] [ON CLUSTER cluster_name]

8. 分布式集群下,查看表分区存储大小

这里每个分片的大小可能不一样,集群可能有几个分片,需要将几个分片的加起来

select
	substring(partition,1,10) part,
	sum(rows) AS `总行数`,
	formatReadableSize(sum(data_uncompressed_bytes)) AS `原始大小`,
	formatReadableSize(sum(data_compressed_bytes)) AS `压缩大小`,
	round((sum(data_compressed_bytes) / sum(data_uncompressed_bytes)) * 100,0) AS `压缩率`
from
	system.parts
where
	database = 'database_T'
	and table = 'table_T'
group by
	substring(partition,1,10);

??

??

??

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
ClickHouse是一个开源的列式数据库管理系统,专为大规模数据分析和实时查询而设计。它支持高性能的并行查询和数据压缩,适用于处理大量数据的场景。 在使用ClickHouse进行SQL查询时,可以按照以下步骤进行操作: 1. 创建表:使用CREATE TABLE语句创建一个新的表,可以指定表的名称、列的名称和数据类型,以及表的引擎类型。例如,可以使用以下命令创建一个名为table_from_file的表,并指定其列和引擎类型: \[1\] 2. 导入数据:使用INSERT INTO语句将数据导入到表中。可以使用INFILE关键字指定数据文件的路径和格式。例如,可以使用以下命令将数据从input.csv文件导入到table_from_file表中: \[1\] 3. 执行查询:使用SELECT语句从表中检索数据。可以使用FORMAT关键字指定查询结果的格式。例如,可以使用以下命令从table_from_file表中检索数据并以紧凑的格式显示: \[1\] 除了基本的查询操作,ClickHouse还支持许多其他功能,如聚合函数、分组、排序、过滤等。可以根据具体的需求使用相应的SQL语句来实现这些功能。 总结起来,使用ClickHouse进行SQL查询的一般步骤包括创建表、导入数据和执行查询。通过灵活的SQL语句和高性能的查询引擎,ClickHouse可以有效地处理大规模数据分析和实时查询的需求。 #### 引用[.reference_title] - *1* *2* *3* [ClickHouse SQL 操作语句详解](https://blog.csdn.net/leesinbad/article/details/129127536)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

春马与夏

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

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

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

打赏作者

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

抵扣说明:

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

余额充值