ODPS DDL

ODPS DDL其实很简单主要是对表和分区的DDL,和oracle和mysql的语法非常相似另外也综合了hive的一些特点

CREATE TABLE

语法:
CREATE TABLE [IF NOT EXISTS] table_name
[(col_name data_type [COMMENT col_comment], ...)]
[COMMENT table_comment]
[PARTITIONED BY (col_name data_type [COMMENT col_comment], ...)]
[LIFECYCLE days]
[AS select_statement]
CREATE TABLE [IF NOT EXISTS] table_name
LIKE existing_table_name

1、odps sql关键字(表名、列名和保留字)不区分大小写
2、if not exists,如果不加入此关键字,表存在时会报错,加上如果表存在则什么都不做,表不存在则执行建表操作
3、odps字段类型只支持bigint, double, boolean, datetime, string
4、comment关键字后面是列的注释或者在最后可以添加表的注释
5、partition by关键字段指定分区字段,只能为string,目前在表的分区不能超过5级
6、lifecycle 可以指定表的生命周期,以天为单位
7、可以像oracle那样,使用select语句来创建表,但是这样就不能创建分区表了
8、可以使用like 复制表结构

DROP TABLE

语法:
DROP TABLE [IF EXISTS] table_name;
1、可以使用if exists指定如果表存在才执行删除操作
2、如果不指定if exists表不存在时会报错

RENAME TABLE

ALTER TABLE table_name RENAME TO new_table_name;

1、rename不操作数据,只改表名
2、如果表不存在或者rename的名字已经存在则会报错

CREATE VIEW

语法:
CREATE [OR REPLACE] VIEW [IF NOT EXISTS] view_name
[(col_name [COMMENT col_comment], ...)]
[COMMENT view_comment]
[AS select_statement]
1、不能insert into或者insert overwrite视图

DROP VIEW

语法:
DROP VIEW [IF EXISTS] view_name;


RENAME VIEW

语法:
ALTER VIEW view_name RENAME TO new_view_name;

ADD PARTITIONS

语法:
ALTER TABLE table_name ADD [IF NOT EXISTS] PARTITION partition_spec
partition_spec:
: (partition_col1 = partition_col_value1, partition_col2 = partiton_col_value2, ...)

DROP PARTITION

语法:
ALTER TABLE table_name DROP [IF EXISTS] partition_spec;
partition_spec:
: (partition_col1 = partition_col_value1, partition_col2 = partiton_col_value2, ...)

修改表的注释信息

语法:
ALTER TABLE sale_detail SET COMMENT
'new coments for table sale_detail';

添加列

语法:
ALTER TABLE table_name ADD COLUMNS (col_name1 type1, col_name2 type2...)

修改列名

语法:
ALTER TABLE table_name CHANGE COLUMN old_col_name RENAME TO new_col_name;

修改列、分区注释

语法:
ALTER TABLE table_name CHANGE COLUMN col_name COMMENT 'comment';

修改表的生命周期

语法:
ALTER TABLE table_name SET LIFECYCLE days;

 

 

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26613085/viewspace-1327401/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/26613085/viewspace-1327401/

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值