Hive 默认分区的测试

1.分区类型非字符串型

1.1 创建分区表 tp

create table tp(c1 string) partitioned by (pc int) stored as textfile;

1.2 往 pc=1分区插入一条数据。

insert into tp (c1,pc)values('1',1);

1.3 往 pc=2分区插入一条数据。

insert into tp (c1,pc)values('2',2);

1.4 显示当前分区

两个分区

hive> show partitions tp;
OK
pc=1
pc=2

1.5 插入数据,不指定分区

insert into tp (c1)values('3');

1.6 显示当前分区

三个分区,多了一个分区 pc=__HIVE_DEFAULT_PARTITION__

hive> show partitions tp;
OK
pc=__HIVE_DEFAULT_PARTITION__
pc=1
pc=2

1.7 仅检索默认分区的数据

hive> select * from tp where pc is NULL;
OK
3	NULL

2.分区类型字符串型

2.1 创建分区表 tp_str

create table tp_str(c1 string) partitioned by (pc string) stored as textfile;

2.2 往 pc=1分区插入一条数据。

insert into tp_str (c1,pc)values('1','1');

2.3 往 pc=2分区插入一条数据。

insert into tp_str (c1,pc)values('2','2');

2.4 显示当前分区

两个分区

hive> show partitions tp_str;
OK
pc=1
pc=2

2.5 插入数据,不指定分区

insert into tp_str (c1)values('3');

2.6 显示当前分区

三个分区,多了一个分区 pc=__HIVE_DEFAULT_PARTITION__

hive> show partitions tp_str;
OK
pc=__HIVE_DEFAULT_PARTITION__
pc=1
pc=2

2.7 仅检索默认分区的数据

hive> select * from tp_str where pc='__HIVE_DEFAULT_PARTITION__';
OK
3	__HIVE_DEFAULT_PARTITION__

你可能感兴趣的:(hive,hive)