HiveQL基础操作

46 阅读1分钟

Hive QL主要分为DDL、DML、UDF

1. 操作数据库

创建数据库

create datebase test;

描述数据库

desc database test;

改变默认数据库

use test;

删除数据库

drop database test;

2. 创建表

先判断再创建表,默认创建的是内部表

create table if not exist t_user
(
    id string,
    name string
);

创建外部表,在删除时仅删除元数据

create external table t_user 
{
    id string,
    name string
}
location /test/t_user

创建分区表

create table t_user
(
    id string,
    name string
} partioned by (age int);

3. 准备数据

从本地加载文件到Hive表

load data local inpath '/usr/local/data/test.txt' into table t_user;

通过已有的表,将数据写入另一个表(覆盖写入)

insert overwrite table t_user_2 select * from t_user;

4. 查询数据

查询数据

select * from t_user;

在查询中使用函数

select upper(name),id from t_user;

使用统计函数,会触发MapReduce操作

select count(*) from t_user;

去除重复值,会触发MR

select distinct(name) from t_user;

限制返回的记录数目

select id,name from t_user limit 3;

采用like进行模糊查询

select * from t_user where name like '%A%';

分组统计

select avg(salary) from t_user group by age;

通过having过滤分组统计结果

select avg(salary) from t_user_salary 
group by age 
having avg(salary) > 10000;

参考

【1】大数据Hadoop 3.x分布式处理实战