HIVE HSQL 基本操作命令
创建表:
hive>create table tablename(id int,name string,password string);
创建一个名字为tablename的表,表的属性有int id; string name; string password;
创建表时指定分隔符
hive> create table test1(name string,count int)row format delimited fields terminated by '/t';
加载表
hive> load data inpath '/user/hadoop/output7/part-r-00000' into table test1;
创建一个新表,结构与其他一样
hive> create table table1 like table2;
创建一个表table1,表结构跟table2一样;
创建分区表
hive> create table table1(id int,line string) partitioned by (dt string,country string);
显示表里有多少条记录(count 数大于50的有多少条记录)
hive>select count(*) from tablename where count>50;
排序用法order by (查询count 数大于50并排序)
select * from test2 where count > 50 order by count;
显示表中有多少分区
hive> show partitions table1;
显示所有表
hive> show tables;
显示所有与u开头的表
hive> show tables 'u*';
显示表的结构信息
hive> describe test1;
修改表名字
hive> alter table table1 rename to test3;
在原表上新添加一列
hive> alter table test1 add columns(new_col2 int comment 'a commment');
hive> alter table test1 add columns(new_col3 int);
删除表
hive> drop table test3;
从本地文件加载数据:
hive> LOAD DATA LOCAL INPATH '/home/hadoop/input/ncdc/micro-tab/sample.txt' OVERWRITE INTO TABLE records;
加载分区表
hive> load data inpath '/user/hive/warehouse/clickstream_log/dt=2016-11-29/part-r-00000' overwrite into table clickstream_log PARTITION(dt = '2016-11-30');
显示所有函数
hive> show functions;
查看函数的用法
hive> describe function substr;
查看数组、map、结构
hive> select col1[0],col2['b'],col3.c from complex;
查看数组、map、结构
hive> select col1[0],col2['b'],col3.c from complex;
内连接:
hive> SELECT sales.*, things.* FROM sales JOIN things ON (sales.id = things.id);
查看hive为某个查询使用多少个MapReduce作业
hive> Explain SELECT sales.*, things.* FROM sales JOIN things ON (sales.id = things.id);
外连接:
hive> SELECT sales.*, things.* FROM sales LEFT OUTER JOIN things ON (sales.id = things.id);
hive> SELECT sales.*, things.* FROM sales RIGHT OUTER JOIN things ON (sales.id = things.id);
hive> SELECT sales.*, things.* FROM sales FULL OUTER JOIN things ON (sales.id = things.id);
in查询:Hive不支持,但可以使用LEFT SEMI JOIN
hive> SELECT * FROM things LEFT SEMI JOIN sales ON (sales.id = things.id);
Map连接:Hive可以把较小的表放入每个Mapper的内存来执行连接操作
hive> SELECT /*+ MAPJOIN(things) */ sales.*, things.* FROM sales JOIN things ON (sales.id = things.id);
INSERT OVERWRITE TABLE ..SELECT:新表预先存在
hive> FROM records2
> INSERT OVERWRITE TABLE stations_by_year SELECT year, COUNT(DISTINCT station) GROUP BY year
> INSERT OVERWRITE TABLE records_by_year SELECT year, COUNT(1) GROUP BY year
> INSERT OVERWRITE TABLE good_records_by_year SELECT year, COUNT(1) WHERE temperature != 9999 AND (quality = 0 OR quality = 1 OR quality = 4 OR quality = 5 OR quality = 9) GROUP BY year;
CREATE TABLE ... AS SELECT:新表表预先不存在
hive>CREATE TABLE target AS SELECT col1,col2 FROM source;
创建视图:
hive> CREATE VIEW valid_records AS SELECT * FROM records2 WHERE temperature !=9999;
查看视图详细信息:
hive> DESCRIBE EXTENDED valid_records;
-------------------------------------------------------------------------------------------------------------------------------------
传统数据库:
添加:
insert into 表名 values();
修改:
update 表名 set a=b where b=c;
删除:
delete from 表名where a=b;
查询:
select * from 表名 where a=b;
HIVE HSQL 基本操作命令的更多相关文章
- hive Hsql
show databases; use flume; show tables; desc flume; alter table table_name add columns(dt string); a ...
- 《OD大数据实战》Hive入门实例
官方参考文档:https://cwiki.apache.org/confluence/display/Hive/LanguageManual 一.命令行和客户端 1. 命令窗口 1)进入命令窗口 hi ...
- 大数据系列之数据仓库Hive安装
Hive系列博文,持续更新~~~ 大数据系列之数据仓库Hive原理 大数据系列之数据仓库Hive安装 大数据系列之数据仓库Hive中分区Partition如何使用 大数据系列之数据仓库Hive命令使用 ...
- hadoop面试100道收集(带答案)
1.列出安装Hadoop流程步骤 a) 创建hadoop账号 b) 更改ip c) 安装Java 更改/etc/profile 配置环境变量 d) 修改host文件域名 e) 安装ssh 配置无密码登 ...
- 《OD学Oozie》20160807Oozie
一.引入 MapReduce Job Hive 脚本任务 同一个业务:先后.定时调度 工作流: 定义工作流程 activity jbpm oozie: 大数据工作流定义与调度框架 专门定义与调度Map ...
- shell_hive
(1)获取参数:从shell文件传来参数,调用:$1,$2,$3 load_date=$1 clearn_date=`date -d"$2 day ago $load_date" ...
- 2. Hive常见操作命令整理
该笔记主要整理了<Hive编程指南>中一些常见的操作命令,大致如下(持续补充中): 1. 查看/设置/修改变量2. 执行命令3. 搜索相关内容4. 查看库表信息5. 创建表6. 分区7. ...
- Hive常用操作命令
创建数据库>create database db_name;>create database if not exists db_name;//创建一个不存在的数据库final查看数据库&g ...
- Hive记录-Beeline常用操作命令
Beeline和其他工具有一些不同,执行查询都是正常的SQL输入,但是如果是一些管理的命令, 比如进行连接,中断,退出,执行Beeline命令需要带上"!",不需要终止符.常用命令 ...
随机推荐
- vfptr(2)
//i_vptr struct i_vptr { ; }; //vptr.h #include "i_vptr.h" #include <iostream> class ...
- Linq与扩展方法
使用数据集 /// <summary> /// 库房信息类 /// </summary> public class Kfxx { /// <summary> /// ...
- Javascript中的函数中的this值
看下面这段代码会在控制台上输出什么内容? <script> var url="fang.com"; var obj={ url:"soufun.com&quo ...
- Centos7配置外部网络访问
Centos7配置外部网络访问 一.安装步骤中的重要配置: 默认是动态ip配置,有需要可以改成静配置 BOOTPROTO="static" 二.如果不能联网,按照如下步骤设置网络: ...
- python系列六:Python3元组tuple
'''元组与列表类似,不同之处在于元组的元素不能修改.元组使用小括号,列表使用方括号.''''''uple元素不可变有一种特殊情况,当元素是可变对象时.对象内部属性是可以修改的!tuple的不可变限制 ...
- el-tree 设置目录树中的某个节点为高亮状态
现在可以实现,点击某个节点,该节点会红色高亮,那怎么让这个树加载出来的时候 默认某个节点高亮呢?element ui里面带勾选框的可以默认勾选上,这个没有勾选框 其实很简单.element ui的树形 ...
- Python3.6全栈开发实例[003]
3.检查传入列表的长度,如果大于2,将列表的前两项内容返回给调用者. li = [11,22,33,44,55,66,77,88,99,000,111,222] def func3(lst): if ...
- 【生产问题】--8KW的数据表导致业务卡顿
问题描述:业务突然变得巨卡 分析思路: (1)分析用户请求进程:查看是否有长期运行霸占锁的情况,或者进程数量巨多.很明显我这里就是巨多,正常情况一般0~40来个的样子,在业务使用高峰期居然达到了140 ...
- boost之时间timer
C++一直缺乏对时间和日期的处理能力,一般借助于C的struct tm和time():timer包含三个类其中timer,progress_timer是计时器类,进度指示类是progress_disp ...
- 升级到tomcat8遇到The method getDispatcherType() is undefined for the type HttpServletRequest
今天升级到tomcat8,发现原来的项目不能运行了,遇到下面的错误:The method getDispatcherType() is undefined for the type HttpServl ...