展示数据库列表
show databases;
使用database数据库
use database;
创建数据库
数据库本质上是一个目录或命名空间,用于解决表命名冲突。
CREATE DATABASE IF NOT EXISTS test1
LOCATION ‘/hive/test1’
WITH DBPROPERTIES(‘creator’=‘John’,‘date’=‘2019-02-25’);
if not exists是可省的
LOCATION:指定数据库位于HDFS上的存储路径。若未指定,将使用${hive.metastore.warehouse.dir}定义值作为其上层路径位置
修改数据库信息
ALTER DATABASE test1 SET DBPROPERTIES(‘creator’=‘Marry’);
删除数据库
DROP DATABASE test1;
查看数据库信息(extended可选)
DESCRIBE DATABASE EXTENDED 数据库名;
创建表(这里是(用逗号隔开的,也可替换成空格,把引号里面改成空格)
create table (if not exists) 表名(xx string,xx int,xx text,xx float) row format delimited fields terminated by “,”;
向表中导入数据
导入hdfs中的数据
load data inpath ‘/001/hive/emp.csv(路径)’ into table 表名;
导入本地数据
load data local inpath ‘/home/root/002/hive/emp2.csv(本地路径)’ into table 表名;
删除表
drop table 表名;
一些函数
select 查询出指定信息
where 进行限定
like ‘%限定词%’,like 操作符用于在WHERE子句中搜索列中的指定模式。%代表任意多个字符。
select * from 表名;//查询所有信息
select x from 表名 where xx == a and xxx > and …;
如,查询出工作职责涉及hive的并且工资大于8000的公司名称以及工作经验。
select workingExp,company_name from table1 where salary>8000 and
responsibility like ‘%hive%’;
group by
group by表示按照某些字段的值进行分组,有相同的值放到一起,需要注意的是select后面的非聚合函数字段必须出现在group by中;
聚合函数就是像avg(),sum(),count()这种
详细解释可以看这里