Hive SQL --- DDL(数据定义)语句

本文介绍了Hive中DDL语句的使用,主要是用来操作数据库, 数据表, 字段等.
摘要由CSDN通过智能技术生成

目录

1.建表格式

2.切割符

3.修改表 相关操作

4.内部表 和 外部表的区别

5.分区之静态分区

6.分区之动态分区

7.分区表之总结

8.分桶表

9.复杂类型之array

10.复杂类型之struct

11.复杂类型之map

总结


1.建表格式

create [external] table [if not exists] 表名(
        列名 数据类型  [ comment '描述信息'],
        列名 数据类型  [ comment '描述信息'],
        列名 数据类型  [ comment '描述信息'],
            ......
) comment '表的描述信息'
分区
分桶(桶内排序 + 分桶个数)
行格式切割符
存储格式(行存储, 列存储)
存储位置
表的属性信息;

2.切割符

默认切割符
Hive表默认切割符是'\001'符号

自定义切割符
row format delimited fields terminated by '\t'

3.修改表 相关操作

修改表名       rename to
修改表属性     alter table...set tblproperties('EXTERNAL'='TRUE')
添加列         alter table...add columns (address string, hobby string)
修改列名       alter table t_archer_backup1 change address addr string;

4.内部表 和 外部表的区别

1. 格式不同.
        直接创建Hive表默认就是内部表, 如果要创建外部表, 必须用 external 关键字.
2. 删除时是否会删除源文件.
        删除内部表的时候, 除了会删除元数据, 还会删除源文件.
        删除外部表的时候, 只会删除元数据, 但是源文件(HDFS上)还在.
3. 应用场景不同.
        删除Hive的时候, 如果也要同步删除源文件, 就用内部表.
        否则就用外部表, 例如: Hbase 和 Hive的映射

5.分区之静态分区

静态分区

格式        create table 表名(....) 
            partitioned by(分区字段1 数据类型, 分区字段2 数据类型...)  row format ...... ;

细节: 分区字段必须是表中没有的字段.

往分区表中添加数据    
    load data local inpath '/export/data/hivedata/archer.txt' into table t_all_hero_part partition (role='sheshou&#
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值