1 CREATE
1.1 CREATE DATABASE
用于创建指定名称的数据库,语法如下:
CREATE DATABASE [IF NOT EXISTS] db_name
如果查询中存在IF NOT EXISTS,则当数据库已经存在时,该查询不会返回任何错误。
create database test;
Ok.
0 rows in set. Elapsed: 0.018 sec.
大数据培训SQL语法CREATE
1.2 CREATE TABLE
对于创建表,语法如下:
CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
(
name1 [type1] [DEFAULT|MATERIALIZED|ALIAS expr1],
name2 [type2] [DEFAULT|MATERIALIZED|ALIAS expr2],
…
) ENGINE = engine
DEFAULT expr – 默认值,用法与SQL类似。
MATERIALIZED expr – 物化表达式,被该表达式指定的列不能被INSERT,因为它总是被计算出来的。 对于INSERT而言,不需要考虑这些列。 另外,在SELECT查询中如果包含星号,此列不会被查询。
ALIAS expr – 别名。
大数据培训SQL语法CREATE
有三种方式创建表:
1)直接创建
create table t1(id UInt16,name String) engine=TinyLog
2)创建一个与其他表具有相同结构的表
CREATE TABLE [IF NOT EXISTS] [db.]table_name AS [db2.]name2 [ENGINE = engine]
可以对其指定不同的表引擎声明。如果没有表引擎声明,则创建的表将与db2.name2使用相同的表引擎。
3)使用指定的引擎创建一个与SELECT子句的结果具有相同结构的表,并使用SELECT子句的结果填充它。
大数据培训SQL语法CREATE
语法:
CREATE TABLE [IF NOT EXISTS] [db.]table_name ENGINE = engine AS SELECT …
实例: