我是靠谱客的博主 瘦瘦世界,最近开发中收集的这篇文章主要介绍clickhouse语句_clickhouse基本语法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

DDL(DDL:数据定义语言,通常是数据库管理系统的一部分,用于定义数据库的所有特性和属性,尤其是行布局、列定义、键列(有时是选键方法)、文件位置和存储策略。 )

包括命令:

REATE(建表),

ALTER(添加),

GRANT(grant 操作 MySQL存储过程、函数权限,授权命令),

REVOKE(撤回),

DROP(删除),

**TRUNCATE(**删除表中的数据的方法有delete,truncate, 其中TRUNCATE TABLE用于删除表中的所有行,而不记录单个行删除操作。TRUNCATE TABLE 与没有 WHERE 子句的 DELETE 语句类似;但是,TRUNCATE TABLE 速度更快,使用的系统资源和事务日志资源更少。)

当你不再需要该表时, 用 drop;当你仍要保留该表,但要删除所有记录时, 用 truncate;当你要删除部分记录时(always with a WHERE clause), 用 delete.

一、Truncate语法

[ { database_name.[ schema_name ]. | schema_name . } ]

table_name

[ ; ]

二、参数

database_name

数据库的名称。

schema_name

表所属架构的名称。

table_name

要截断的表的名称,或要删除其全部行的表的名称。

/clickhouse/task_queue/ddl

一个节点创建表,会同步到各个节点

CREATE TABLE db.table [ON CLUSTER cluster] (…)

添加、删除、修改列

ALTER TABLE [db].table [ON CLUSTER cluster] ADD|DROP|MODIFY COLUMN …

rename 支持*MergeTree和Distributed

rename table db.table1 to db.table2 [ON CLUSTER cluster]

truncate table db.table;不支持Distributed引擎

二、delete/update 不支持Distributed引擎

ALTER TABLE [db.]table DELETE WHERE filter_expr…

ALTER TABLE [db.]table UPDATE column1 = expr1 [, …] WHERE …

三、分区表

按时间分区:

toYYYYMM(EventDate):按月分区

toMonday(EventDate):按周分区

toDate(EventDate):按天分区

按指定列分区:

PARTITION BY cloumn_name

对分区的操作:

alter table test1 DROP PARTITION [partition] #删除分区

alter table test1 DETACH PARTITION [partition]#下线分区

alter table test1 ATTACH PARTITION [partition]#恢复分区

alter table .test1 FREEZE PARTITION [partition]#备份分区

四、数据同步

采用remote函数

insert into db.table select * from remote(‘目标IP’,db.table,‘user’,‘passwd’)

csv文件导入clickhouse

cat test.csv | clickhouse-client -u user --password password --query=“INSERT INTO db.table FORMAT CSV”

同步mysql库中表

CREATE TABLE tmp ENGINE = MergeTree ORDER BY id AS SELECT * FROM mysql(‘hostip:3306’, ‘db’, ‘table’, ‘user’, ‘passwd’) ;

4) clickhouse-copier 工具

五、时间戳转换

select toUnixTimestamp(‘2018-11-25 00:00:02’) --DateTime转化为时间戳

注意:可以指定时区,例如:select toUnixTimestamp(‘2018-11-25 00:00:02’,‘Asia/Shanghai’)

select toDateTime(1543075202) --时间戳转化为DateTime

select toDateTime(‘2018-04-30 00:00:00’) --转化为DateTime的标准格式

结果:2018-04-30T00:00:00+00:00

最后

以上就是瘦瘦世界为你收集整理的clickhouse语句_clickhouse基本语法的全部内容,希望文章能够帮你解决clickhouse语句_clickhouse基本语法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(34)

评论列表共有 0 条评论

立即
投稿
返回
顶部