一、hive資料庫操作
1.1 檢視資料庫
show databases;
使用like
關鍵字模糊匹配
# 顯示包含db_字首的資料庫名稱
show databases like
'db_*';
1.2 使用資料庫
use database名稱
1.3 建立資料庫
create
database dbname;
通過location指定資料庫路徑
create
database dbname location 'path路徑';
給資料庫新增描述資訊
create
database dbname comment 'dbname描述資訊';
1.4 刪除資料庫
# 刪除資料庫,這種刪除,需要將資料庫中的表全部刪除,才能刪除資料庫
drop
database dbname;
或者drop
database
ifexists dbname;
cascade
強制刪除
# 強制刪除資料庫
drop
database dbname cascade;
1.5 檢視資料庫的詳細描述
desc database dbname;
destribe database dbname;
結果如圖:
二、hive表操作
2.1 顯示資料庫中的表
show tables;
使用like模糊匹配,查詢包含tb_
字首的表
show tables like
'tb_*';
或者show tables 'tb_*';
2.1.1 顯示表的分割槽
show partitions tb_test;
2.2 顯示表的詳細資訊
desc tb_name;
describe tb_name;
2.3 建立表建表語法:
create [external] table [if not exists] table_name (
col_name data_type [comment '字段描述資訊']
col_name data_type [comment '字段描述資訊'])
[comment '表的描述資訊']
[location '指定表的路徑']
[partitioned by (col_name data_type,...)]
[clustered by (col_name,col_name,...)]
[sorted by (col_name [asc|desc],...) into num_buckets buckets]
[row format row_format]
[location location_path]
2.2.1 簡單的表建立
create
table tb_test(name string, age int);
2.2.2 指定字段分隔符
create
table tb_test(name string,age int)
row format delimited fields terminated by
',';
2.2.3 建立外部表
create
external
table tb_test(name string,age int)
row format delimited fields terminated by
',';
2.2.4 建立分割槽表
create
table tb_part(name string,age int)
partitioned by (*** string)
row format delimited fields terminated by
',';
2.2.5 建立表,指定location
create
table tb_location(name string,age int)
row format delimited fields terminated by
','location 'hdfs:';
2.2.6 建立帶桶的表
create
table student(id int,name string,age int)
partitioned by (*** string)
clustered by(id)
sorted by (age) into
2 buckets
row format delimited fields terminated by
',';
2.3 刪除表
drop
table tb_name;
drop
table
ifexists tb_name;
2.4 修改表2.4.1 新增分割槽
# 按照***='male',***='female'進行分割槽
alter
table student add partition(***='male') partition(***='female');
2.4.2 刪除分割槽
alter
table student drop partition(***='male');
2.4.3 重新命名表
alter
table table_name rename to new_table_name;
2.4.4 增加列
alter
table student add columns (rank string);
或者alter
table student replace columns (height string);
補充:hive使用shell命令和dfs命令
在hive客戶端中,可以通過前面新增!
可以使用shell命令,如圖:
2 2 0Hive資料庫表的操作
hive資料庫表的操作 一 建立資料庫 1.create database語句 hive資料庫是乙個命名空間或標的集合。語法 craete database schema if notexists 2.建立資料庫 3.檢視是否建立成功 二 檢視資料庫資訊 1.檢視資料庫的描述資訊和檔案目錄位置路徑資...
資料庫和表的操作
建立資料庫 create database if not exists 庫名 character set 字符集名 修改庫 alter database 庫名 character set 字元集合 如想修改資料庫名,直接通過修改資料夾名的方式去修改 刪庫 drop database 表的操作 建立表...
HIVE 資料庫臨時表
hive從0.14.0開始提供建立臨時表的功能,表只對當前session有效,session退出後,表自動刪除。語法 create temporary table 注意點 1 如果建立的臨時表表名已存在,那麼當前session引用到該錶名時實際用的是臨時表,只有drop或rename臨時表名才能使用...