2、hive的基本操作
2024-08-23 20:37:05
1、创建数据库和表
1)创建数据库
hive> CREATE DATABASE IF NOT EXISTS userdb;
OK
Time taken: 0.252 seconds
hive> CREATE SCHEMA userdb_2;
OK
Time taken: 0.041 seconds
2)创建表
hive>CREATE TABLE userTables(id INT,name STRING);
或者
hive> CREATE TABLE userTables(id int, name string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ' ' LINES TERMINATED BY '\n' STORED AS TEXTFILE;
其中TERMINATED BY ' '指定了数据分隔符是一个空格 创建一个新表,结构与其他一样
hive> create table new_table like testUser;
2、创建分区表
hive> create table logs(ts bigint,line string) partitioned by (dt String,country String)ROW FORMAT DELIMITED FIELDS TERMINATED BY ' ' LINES TERMINATED BY '\n' STORED AS TEXTFILE;
加载分区表数据:
hive> load data local inpath '/home/test.txt' into table logs partition (dt='2017-07-20',country='GB');
展示表中有多少分区:
hive> show partitions logs;
3、展示所有表:
hive> SHOW TABLES; hive> SHOW TABLES '.*s';
4、显示表结构
hive> DESCRIBE test;
5、更新表名称:
hive> ALTER TABLE table_name RENAME TO new_table_name;
6、添加新一列:
hive> ALTER TABLE test ADD COLUMNS (new_col2 INT);
7、删除表:
hive> DROP TABLE table_name;
删除表中数据,但要保持表的结构定义
hive> dfs -rmr /user/hive/warehouse/records;
8、从本地文件加载数据:
hive> LOAD DATA LOCAL INPATH '/home/sample.txt' OVERWRITE INTO TABLE test_table;
9、显示所有函数、查看所有函数用法
hive> show functions; hive> describe function substr;
10、查看数组、map结构
hive> select col1[0],col2['b'],col3.c from test_table;
11、内连接
hive> SELECT test.*,test_2.* FROM test JOIN test_2 ON(test.id = test_2.id);
查看hive为某个查询使用多少个mapreduce
hive> EXPLAIN SELECT test.*,test_2.* FROM test JOIN test_2 ON(test.id = test_2.id);
12、外连接
hive> SELECT test.*, test_2.* FROM test LEFT OUTER JOIN test_2 ON (test.id = test_2.id);
hive> SELECT test.*, test_2.* FROM test RIGHT OUTER JOIN test_2 ON (test.id = test_2.id);
hive> SELECT test.*, test_2.* FROM test FULL OUTER JOIN test_2 ON (sales.id = things.id);
最新文章
- thinkphp导入导出excel表单数据
- final finally finalize
- 实现Web验证码图片-原理
- css3 使用SVG做0.5px 的边框细线
- 12-1 上午mysql 基本语句
- 常用html演示模板
- spring mvc 多视图配置
- linux内核中分配4M以上大内存的方法
- PHP函数的默认参数
- ASP.Net MVC3 - The easier to run Unit Tests by moq #Reprinted#
- 《JAVASCRIPT高级程序设计》第二章
- RADIUS and IPv6[frc-3162译文]
- java加密算法AES与RSA
- Linux文件基本操作
- 通过一个工具类更深入理解动态代理和Threadlocal
- Codeforces Round #443 (Div. 1) C. Tournament
- AX2012 ERP 维度相关表数据关系图
- 机器学习 之梯度提升树GBDT
- .NET Core修改监听端口
- post/get in console of JSarray/js 数组详细操作方法及解析合集