创建内部表:
create table if not exists stus(
name string,age int,sex string
)row format delimited fields terminated by "\t";
创建外部表:
create external table if not exists sogou(
time string,uid string,kw string,rank int,
orders int,url string
)
row format delimited
fields terminated by "\t"
location '/input/sogou';
创建分区表:
create table if not exists invites(
id int,name string
)
partitioned by (ds string)
row format delimited fields terminated by '\t'
stored as textfile;
create table if not exists stus_partition(
name string,age int,sex string
)partitioned by (class string)
row format delimited fields terminated by '\t'
stored as textfile;
向分区表加载数据:
load data local inpath '/home/tg/datas/stu' into table stus_partition partition(class='001')
基本模式插入
insert overwrite table student partition (stat_date='20170101')
select id,age,name from student where stat_date='20160101';
多模式插入
from student
insert overwrite table student partition(stat_data='20170101')
select id,age,name where stat_data='20160101'
insert overwrite table student partition(stat_data='20170201')
select id,age,name where stat_data='20160201';
自动分区模式
insert overwrite table student partition(stat_data)
select id,age,name,stat_data from student where stat_data='20170201';
导出文件到本地:&&&注意overwrite关键字后面没有into
insert overwrite local directory '/root/app/datafile/student1'
select * from student1;
导出数据到HDFS:
insert overwrite directory 'hdfs://master:9000/input/test/'
selec * from student1;
create table if not exists stus(
name string,age int,sex string
)row format delimited fields terminated by "\t";
创建外部表:
create external table if not exists sogou(
time string,uid string,kw string,rank int,
orders int,url string
)
row format delimited
fields terminated by "\t"
location '/input/sogou';
创建分区表:
create table if not exists invites(
id int,name string
)
partitioned by (ds string)
row format delimited fields terminated by '\t'
stored as textfile;
create table if not exists stus_partition(
name string,age int,sex string
)partitioned by (class string)
row format delimited fields terminated by '\t'
stored as textfile;
向分区表加载数据:
load data local inpath '/home/tg/datas/stu' into table stus_partition partition(class='001')
基本模式插入
insert overwrite table student partition (stat_date='20170101')
select id,age,name from student where stat_date='20160101';
多模式插入
from student
insert overwrite table student partition(stat_data='20170101')
select id,age,name where stat_data='20160101'
insert overwrite table student partition(stat_data='20170201')
select id,age,name where stat_data='20160201';
自动分区模式
insert overwrite table student partition(stat_data)
select id,age,name,stat_data from student where stat_data='20170201';
导出文件到本地:&&&注意overwrite关键字后面没有into
insert overwrite local directory '/root/app/datafile/student1'
select * from student1;
导出数据到HDFS:
insert overwrite directory 'hdfs://master:9000/input/test/'
selec * from student1;