HIVE 学习笔记,
1、hive建表语法中的分隔符设定ROW FORMAT DELIMITED 分隔符设置开始语句
FIELDS TERMINATED BY:设置字段与字段之间的分隔符
COLLECTION ITEMS TERMINATED BY:设置一个复杂类型(array,struct)字段的各个item之间的分隔符
MAP KEYS TERMINATED BY:设置一个复杂类型(Map)字段的key value之间的分隔符
LINES TERMINATED BY:设置行与行之间的分隔符
注:ROW FORMAT DELIMITED 必须在其它分割设置之前,也就是分隔符设置语句的最前面
LINES TERMINATED BY 必须在其它分割设置之后,也就是分隔符设置语句的最后面
否则会报错
2、复杂类型字段设置格式时,在字段名后要接指定的复杂类型,以及使用 <> 来将为复杂类型中的元素指定的数据格式包起来
例如:create
table t(id struct<id1:int,id2:int,id3:int>,name array<string>,xx map<int,string>);
3、Hive文件格式(表STORE AS 的四种类型)
4、HIVE 不支持插入单条数据
5、在 load data 时如果加上关键字 local 则表明从本地上导入数据,如果不加的话则表明从 HDFS 上导入数据
6、load data 时的地址要用引号括起来
7、Hive总结(七)Hive四种数据导入方式
8、查看表的描述使用 desc formatted table_name ,会详细列出所有的相关信息
9、复制表结构
CREATETABLE
new_table LIKE
old_table;
10、插入数据并且不覆盖原有数据
INSERT INTO TABLE table_name ...
11、插入数据并覆盖原有数据
INSERT OVERWRITE TABLE table_name ...
12、创建视图 CREATE VIEW view_name ...
13、导出数据
INSERT OVERWRITE [LOCAL] DIRECTORY 'path' ...
14、HIVE 多表连接使用 join ... on ,且只支持等值连接
15、左外连接
使用 LEFT OUTER JOIN ... ON,如果右边表没有跟左边表主键相同的值的记录将会被记为 NULL
16、右外连接
使用 RIGHT OUTER JOIN ... ON,如果左边表没有跟右边表主键相同的值的记录将会被记为 NULL
17、全外连接
使用 FULL OUTER JOIN ... ON,显示左外连接和有外连接的合集
18、Hive 字符串操作[转]