Hive学习(二):HiveQL DDL操作

上一篇:Hive学习(一):安装运行

下一篇:Hive学习(三):Hive数据类型​​​​​​​

数据库

创建数据库

CREATE (DATABASE|SCHEMA) [IF NOT EXISTS] 数据库名
  [COMMENT 注释]
  [LOCATION hdfs存储路径]
  [WITH DBPROPERTIES (属性名=属性值, ...)];
  • DATABASE|SCHEMA:意义相同

  • WITH DBPROPERTIES:设置一些自定义键值对

可以到hdfs中看看,可以发现数据库就是一个文件夹

 删除数据库

DROP (DATABASE|SCHEMA) [IF EXISTS] 数据库名 [RESTRICT|CASCADE];

RESTRICT:默认设置,如果数据库中有表则删除失败

CASCADE: 强制删除

修改数据库

官方文档各版本能修改的数据库信息

ALTER (DATABASE|SCHEMA) database_name SET DBPROPERTIES (property_name=property_value, ...);   -- (Note: SCHEMA added in Hive 0.14.0)
 
ALTER (DATABASE|SCHEMA) database_name SET OWNER [USER|ROLE] user_or_role;   -- (Note: Hive 0.13.0 and later; SCHEMA added in Hive 0.14.0)
  
ALTER (DATABASE|SCHEMA) database_name SET LOCATION hdfs_path; -- (Note: Hive 2.2.1, 2.4.0 and later)
 
ALTER (DATABASE|SCHEMA) database_name SET MANAGEDLOCATION hdfs_path; -- (Note: Hive 4.0.0 and later)

其他

show databases; -- 查看所有数据库
use 数据库名; -- 使用数据库
desc database [extended] 数据库名; -- 查看数据库详细信息
show create database 数据库名; -- 查看数据库建表语句

 

创建表

CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS] [数据库名.]表名
  [(列名 类型 [COMMENT 列注释], ...)]
  [COMMENT 表注释]
  [PARTITIONED BY (列名 数据类型 [COMMENT 列注释], ...)]
  [CLUSTERED BY (列名, 数据类型, ...) [SORTED BY (列名 [ASC|DESC], ...)] INTO 桶数量 BUCKETS]
  [ROW FORMAT row_format]
  [LOCATION 存储在hdfs的路径]
  [TBLPROPERTIES (属性名=属性值, ...)];
  • TEMPORARY:临时表,当前会话有效
  • EXTERNAL:外部表,由hdfs管理的表
  • ROW FORMAT:hive解析数据所使用的分隔符
    • DELIMITED [FIELDS TERMINATED BY char]:字段值分隔符
      • [COLLECTION ITEMS TERMINATED BY char]:集合元素分隔符(包括array,struct类型)
      • [MAP KEYS TERMINATED BY char]:key-value分隔符
      • [LINES TERMINATED BY char]:行分隔符

hdfs中看一下,表就是数据库文件夹下的一个文件夹

删除表 

DROP TABLE [IF EXISTS] 表名

清空表

TRUNCATE [TABLE] 表名

修改表

列举一些

-- 修改表名
ALTER TABLE 表名 RENAME TO 新表名;
-- 增加列
ALTER TABLE 表名 ADD COLUMNS (列名 数据类型);
-- 修改列定义
ALTER TABLE 表名 CHANGE 列名 新列名 数据类型;
-- 替换列
ALTER TABLE 表名 REPLACE COLUMNS (列名 数据类型, ...);

其他 

-- 查看有哪些表
show tables;
show tables in 数据库名;
show tables like 'de*';
-- 查看表信息
desc 表名;
desc extended 表名; -- 详细
desc formatted 表名; -- 详细,格式好

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值