hive实现多分隔符

hive 建多分隔符表

一、测试外表:

create EXTERNAL  -- 外表标识
  table  tmp.deli_tmp_0117
(
z1 string,
z2 string
) partitioned by (pt string comment 'YYYYMM')
ROW FORMAT SERDE 'org.apache.hadoop.hive.contrib.serde2.MultiDelimitSerDe' -- 设置多分隔符条件
WITH SERDEPROPERTIES ("field.delim"="ALGO") -- 设置分隔符
LOCATION 'hdfs:///user/data/aaa' --指定外表文件目录 (注:这是个文件夹)
在hdfs:///user/data/aaa 下有bbbb目录 bbbb下存放要读取的文件test

文件内容

你ALGO他

第二步:

– 添加分区:

alter table tmp.deli_tmp_0117 add partition (pt='bbbb') location '/user/data/aaa/bbbb'
~~~sql
-- 测试查询
select * FROM tmp.deli_tmp_0117 where pt='bbbb'
二、内表:
--建表
create  table  tmp.deli_tmp_0117_mer
(
z1 string,
z2 string
)
ROW FORMAT SERDE 'org.apache.hadoop.hive.contrib.serde2.MultiDelimitSerDe' -- 设置多分隔符条件
WITH SERDEPROPERTIES ("field.delim"="ALGO")

– 导数据

load data inpath '/user/data/aaa/test' into table tmp.deli_tmp_0117_mer 

你可能感兴趣的:(hive实现多分隔符)