hive从表中选择复杂类型

pu82cl6c  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(332)

考虑一个基表 employee 从employee派生的表称为 employee_salary_period 它包含一个复杂的数据类型 map . 如何从中选择和插入数据 employee 进入 employee_salary_period 哪里 salary_period_map 是一个键值对,即。 salary: period ```
CREATE TABLE employee(
emp_id bigint,
name string,
address string,
salary double,
period string,
position string
)
PARTITIONED BY (
dept_id bigint)
STORED AS PARQUET

CREATE TABLE employee_salary_period(
emp_id
name string,
salary string,
period string,
salary_period_map Map<String,String>,
)
PARTITIONED BY (
dept_id bigint)
STORED AS PARQUET

我一直在想如何选择数据作为工资\期间\Map
nbewdwxp

nbewdwxp1#

考虑使用 str_to_map Hive提供的功能。我希望你的Map上只有一把钥匙(薪水)

select
emp_id
name, 
salary, 
period,
str_to_map(concat(salary,":",period),'&',':')  as  salary_period_map
from employee_salary_period

相关问题