hive 之 常用基本操作

show databases; -- 查看所有数据库

use 数据库;     -- 进入某个数据库

select current_database(); -- 查看当前使用的数据库

show tables;    -- 显示所有表

show tables like '*tb_site*' -- 显示特定表

show partitions 表名; -- 显示表的所有分区

desc tab_name; -- 查看表结构

desc formatted tab_name; -- 查看表结构详细信息(文件地址)

查看表在HDFS中存放的数据文件(hadoop操作):
hdfs dfs -ls hdfs://hadoop001:8020/user/hive/warehouse/tab_name(文件地址)

show create table_name;   -- 显示创建表的语句

select * from tab_name limit 2; -- 查询前n行

创建分区表:
create table if not exists tab_name(
id int,
name string
)PARTITIONED BY (deal_day string) -- deal_day 分区字段
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\u0001' -- 分隔符
LINES TERMINATED BY '\n' -- 换行符
STORED AS TEXTFILE -- 数据存储格式
LOCATION '/data/tab_name' -- 文件存储地址

create table as select 指定数据存储格式创建表

create table tab_name stored as textfile as
select * from tab_name2

insert overwrite table 覆盖分区式插入数据
注:在表结构发生变化(增加、删除字段)之后,需要删除分区才能更新数据。

insert overwrite table tab_name partition(deal_day='某个分区日期')
select * from tab_name2

自动分区插入数据
insert overwrite table tab_name partition(deal_day)
select id,name,deal_day from tab_name2

alter table table_name rename to new_table_name; -- 重命名表

alter table table_name add columns (newcol1 int comment '备注信息,可忽略'); -- 增加字段

alter table table_name change col_name new_col_name new_type;-- 修改字段

alter table table_name replace columns (col1 int,col2 string,col3 string);-- 删除字段(COLUMNS中只放保留的字段)

drop table table_name;-- 删除表


alter table table_name drop if exists partition (deal_day='某个分区日期'); -- 删除分区


drop database if exists db_name; --  删除库

drop database if exists db_name cascade; --  强制删除库


drop table if exists table_name; --  删除表


truncate table table_name; --  清空表

insert overwrite table table_name select * from table_name where 1=0;  --  清空表


alter table table_name drop partition (deal_day<='某个日期'); --  删除分区


insert overwrite table table_name select * from table_name where id>='20'; --  按条件删除数据,删除id小于20的数据,保留id大于等于20的数据

hive -e "sql语句" -- 将查询结果打印在控制台上

hive -e "sql语句" > xxx.txt -- 将查询结果写入到txt文件中

 

posted on 2020-11-26 11:23  Simple-Sir  阅读(806)  评论(0编辑  收藏  举报

导航