首先我们要知道操作Hive数据库的院类似于sql语言但是有些也不同于sql的语言,所以我们就叫他Hql,这里我就介绍一些常用的语言以及我在写语言时的错误。
一、创建表
create table 表名(属性)
ROW FORMAT DELIMITED 行格式分隔
FIELDS TERMINATED BY ’,’ 字段之间使用,来分隔
COLLECTION ITEMS TERMINATED BY ‘,’ 集合使用,分隔
MAP KEYS TERMINATED BY ‘:’ 键值对使用:分隔
LINES TERMINATED BY ‘\t’ 记录之间使用换行分隔
二、查看表描述
DESCRIBE [EXTENDED|FORMATTED] table_name
这里有两种 一个是extended 它显示时是很乱的
而formatted是以一种格式显示
在这里我们可以根据table-type来查看表的类型
三、创建表命令
Hive有四种表格式(内部表、外部表、分区表、分桶表),常见的有两种:
1.内部表
create table tablename;
这种表在我们 进行删除时会删除元数据和源数据,元数据使我们表中的数据,而源数据是存放在hdfs中的数据
2.外部表
create external table tablename
这种表我们在删除时会发现只会删掉metastore的元数据,而存放在hdfs的源数据是不会被删除的。
3.分区表
分区表有份两种,一个是静态分区,一个是动态分区
Hive 分区partition(分成不同的文件目录进行存储)
3.1静态分区:
必须在表定义时指定对应的partition字段-----分区字段一定