1. 创建表
- 使用create命令创建一个新表
create table if not exists zlh.test01(id int,name string) partitioned by (date string) row format delimited fields terminated by '\t';
- 把一张表的某些字段抽取出来,创建成一张新表
create table test02 as select * from zlh.test01;
- 复制表结构
create table test02 like zlh.test01;
2. 导入数据
- 本地导入
load data local inpath 'local_path/file' into table 表名称 ;
- HDFS导入
load data inpath 'hdfs_path/file' into table 表名称 ;
- 覆盖导入
load data local inpath 'path/file' overwrite into table 表名称 ; load data inpath 'path/file' overwrite into table 表名称 ;
- 查询导入
create table track_log_bak as select * from db_web_data.track_log;
- insert导入–常用
// 追加-append-默认方式 insert into table test02 select * from test01; // 覆盖-overwrite-显示指定-使用频率高 insert overwrite table test02 select * from test01;
3. 导出数据
- 本地导出
insert overwrite local directory "/home/test/" row format delimited fields terminated by '\t' select * from db_hive_demo.emp ;
- HDFS导出
insert overwrite diretory "path/" select * from test01;
- Bash shell覆盖追加导出
hive -e "select * from test01;" > /home/test01/test01.log