点击上方“蓝字”关注我吧!
1
创建数据库
1
本地引擎
默认的引擎, 默认操作本地或者是指定集群的数据
CREATE DATABASE [IF NOT EXISTS] db_name [ON CLUSTER cluster] [ENGINE = engine(...)]
2
mysql引擎
MySQL引擎用于将远程的MySQL服务器中的表映射到ClickHouse中,并允许您对表进行INSERT和SELECT查询,以方便您在ClickHouse与MySQL之间进行数据交换。
MySQL数据库引擎会将对其的查询转换为MySQL语法并发送到MySQL服务器中,因此您可以执行诸如SHOW TABLES或SHOW CREATE TABLE之类的操作。
支持的数据类型如下
CREATE DATABASE [IF NOT EXISTS] db_name [ON CLUSTER cluster]ENGINE = MySQL('host:port', ['database' | database], 'user', 'password')
3
lazy引擎
和*.log类型的表配合使用, 向将表数据加载到内存中,当间隔一定的时间以后再将数据持久化!对大量的小表操作做了优化!
CREATE DATABASE testlazy ENGINE = Lazy(expiration_time_in_seconds);
2
创建表
建一个新表。根据使用情况,此查询可以具有各种语法形式。
默认情况下,仅在当前服务器上创建表。分布式DDL查询作为ON CLUSTER子句实现
CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster](name1 [type1] [DEFAULT|MATERIALIZED|ALIAS expr1] [compression_codec] [TTL expr1],name2 [type2] [DEFAULT|MATERIALIZED|ALIAS expr2] [compression_codec] [TTL expr2],...) ENGINE = engine
1
基本语法建表
CREATE TABLE tb_demo1 \(\`id` Int16,\`name` String,\`age` UInt8,\`birthday` Date,\`sal` Decimal32(2)\)\ENGINE = TinyLog
describe table tb_demo1
2
其他表结构
create table tb_demo2 as tb_demo1 ;
可以不指定表的引擎 , 新建表的引擎和原来表的引擎一致
3
as查询数据结构
create table if not exists tb_demo3 engine=TinyLog as select id , name ,age from tb_demo1 ;
注意,一定要指定表的引擎 , 否则会报错
4
表函数
numbers()