presto的DDL语句

如果表存在就删除并新建表

drop table if exists public.qm_temp_table;
CREATE TABLE public.qm_temp_table (
	系统类型 varchar not NULL,
	系统主键 varchar NULL,
	创建时间 timestamp without time zone DEFAULT now(),
	创建人 varchar NULL,
	更新时间 timestamp without time zone DEFAULT now(),
	更新人 varchar NULL
) WITH (orientation=row, compression=no)
DISTRIBUTE BY HASH("系统类型");

修改表名

--这里后面是不需要加对应schema的名称
ALTER TABLE public.qm_temp_table RENAME TO qm_temp_table_name;

修改列名

--修改列名
ALTER TABLE public.qm_temp_table RENAME 系统类型 TO 新系统类型;

将非压缩表修改为压缩表

--修改为压缩表
ALTER TABLE public.qm_temp_table_name SET (compression = yes);

标题修改主键的分布列

--修改分布列
ALTER TABLE public.qm_temp_table_name DISTRIBUTE BY HASH(系统主键);

增加一列为非空或是可以为空

--增加一列为非空或是可以为空
alter table public.qm_temp_table_name add COLUMN 是否删除 varchar default '否' not null;
alter table public.qm_temp_table_name add COLUMN 排序 varchar null;

列的非空删除不删除列

--将列的非空删除
ALTER TABLE public.qm_temp_table_name alter 是否删除 drop not NULL;

删除列(不管是否是非空)

--删除列
ALTER TABLE public.qm_temp_table_name DROP COLUMN 是否删除;

创建唯一索引

--在表public.qm_temp_table_name上的【系统主键】字段上创建唯一索引:
CREATE UNIQUE INDEX table_name_index1 ON public.qm_temp_table_name(系统主键);

创建普通索引并增加注释

--在表public.qm_temp_table_name上的【系统主键】字段上创建普通索引:
CREATE INDEX table_name_index2 ON public.qm_temp_table_name(系统主键) COMMENT '普通索引index';

创建制定的b-tree索引

--在表public.qm_temp_table_name上的【系统主键】字段上创建指定B-tree索引。
CREATE INDEX table_name_index3 ON public.qm_temp_table_name(系统主键) USING btree(系统主键);

华为云上的索引相关文档

修改列类型

--修改列的类型
ALTER TABLE public.qm_temp_table_name ALTER COLUMN 系统主键 TYPE text;

mysql中修改列类型

--mysql可以执行列的位置
--## A.
ALTER TABLE runoob_alter_test MODIFY dataType1 smallint;
--## B.
ALTER TABLE runoob_alter_test MODIFY dataType1 smallint NOT NULL;
--## C.
ALTER TABLE runoob_alter_test MODIFY dataType1 smallint NOT NULL FIRST;
--## D.
ALTER TABLE runoob_alter_test MODIFY dataType1 smallint NOT NULL AFTER dataType3;
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值