Hive基本数据类型&DDL
1.hive的基本数据类型
Hive | Mysql | JAVA |
---|---|---|
TINYINT | TINYINT | byte |
SMALLINT | SMALLINT | short |
INT | INT | int |
BIGINT | BIGINT | long |
BOOLEAN | 无 | boolean |
FLOAT | FLOAT | float |
DOUBLE | DOUBLE | double |
STRING | VARCHAR | string |
TIMESTAMP | TIMESTAMP | |
BINARY | BINARY |
2.集合数据类型
数据类型 | 语法示例 |
---|---|
STRUCE | struct<street:string, city:string> |
MAP | map<string, int> |
ARRAY | array |
3.基本DDL
hive数据库的增添删改查
--创建数据库
create databases [if not exists] database_name
[comment database_comment]
[Location hdfs_path]
--创建数据库与并指定在HDFS上的位置
create database if not exists db_hive
location '/db_hive'
--显示数据库
show databases;
--显示数据库信息
desc database db_hive
--显示数据库详细信息
desc database extended db_hive
--修改数据库
alter database db_hive
set dbproperties('createtime'='2021-03-25')
--删除数据库
drop database if exsits db_hive
--如果数据库不为空 可以采用cascade强制删除
drop database db_hive cascade
hive数据表的增删改查
create [external] table [if not exists] table_name(
--对应字段
)--external表示是否创建外部表
--内部表又称为管理表 在删除表的时候默认删除HDFS上的文件
--外部表 删除表的时候HDFS上的文件还留着,再次将此表重建 数据依然存在
[comment table_comment] --描述
parititioned by ex_par --创建分区表
clustered by --创建分桶表
sorted by --桶排序
location --指定在HDFS的存储位置
as --后面加查询语句,根据查询结果创建表
like --允许用户复制现有表结构,但是不复制数据