ClickHouse中SQL使用

1、创建数据库

语法:CREATE DATABASE [IF NOT EXISTS] db_name

如果数据库db_name已经存在,则不会创建新的db_name数据库。

2、创建表

语法:CREATE TABLE t1(id UInt16,name String) ENGINE=TinyLog

例如:create table t1(id UInt8,name String,address String)engine=MergeTree order by id

3、插入数据

语法:INSERT INTO [db.]table [(c1, c2, c3)] VALUES (v11, v12, v13), (v21, v22, v23), …

例如:insert into t1 (id,name,address) values(1,‘aa’,‘addr1’),(2,‘bb’,‘addr2’)

4、查看表结构DESCRIBLE

语法:DESC|DESCRIBE TABLE [db.]table [INTO OUTFILE filename] [FORMAT format]

例如:desc t1

5、删除表

语法:DROP [TEMPORARY] TABLE [IF

EXISTS] [db.]name [ON CLUSTER cluster]

例如:drop table t2

6、查询表

SELECT [DISTINCT] expr_list
[FROM [db.]table | (subquery) | table_function] [FINAL]
[SAMPLE sample_coeff]
[ARRAY JOIN …]
[GLOBAL] ANY|ALL INNER|LEFT JOIN (subquery)|table USING columns_list
[PREWHERE expr]
[WHERE expr]
[GROUP BY expr_list] [WITH TOTALS]
[HAVING expr]
[ORDER BY expr_list]
[LIMIT [n, ]m]
[UNION ALL …]
[INTO OUTFILE filename]
[FORMAT format]
[LIMIT n BY columns]

7、ARRAY JOIN

查询只能指定单个数组连接子句
ARRAY本质上和INNER JOIN 一样

8、JOIN
INNER or LEFT:同mysql

ANY or ALL:如果指定了ANY,那么只有第一个找到的行被连接,如果指定了ALL,那么所有符合的行都被连接

GLOBAL … JOIN:全局查询,首先,请求者服务器运行一个子查询来计算正确的表。这个临时表被传递给每个远程服务器,并使用传输的临时数据在它们上运行查询,请谨慎使用GLOBAL … JOIN

后续还需要完善--------


clickhouse中文sql文档地址:clickhouse中文sql文档

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值