#sql #hadoop #hive #sql-insert #create-table
#sql #hadoop #улей #sql-вставка #создать-таблица
Вопрос:
В настоящее время я решаю свою первоначальную проблему с помощью этой темы: Hadoop / Hive — разделить одну строку на несколько строк и сохранить в новой таблице.
Кто-нибудь знает, как создать новую таблицу с сгруппированными подразделениями?
ID Subs
1 deep-learning, machine-learning, python
2 java, c , python, javascript
с помощью приведенного ниже кода я получаю искомый результат, но не смог понять, как сохранить выходные данные в новую таблицу
use demoDB
Select id_main , topic_tag from demoTable
lateral view explode (split(topic_tag , ',')) topic_tag as topic
Спасибо
, Нико
Ответ №1:
В Hive вы можете использовать create ... as select ...
:
create table newtable as
select id_main, topic_tag
from demoTable
lateral view explode (split(topic_tag , ',')) topic_tag as topic
Это создает новую таблицу и инициирует ее содержимое из результирующего набора запроса. Если новая таблица уже существует, используйте insert ... select
вместо:
insert into newtable (id_main, topic_tag)
select id_main, topic_tag
from demoTable
lateral view explode (split(topic_tag , ',')) topic_tag as topic
Комментарии:
1. большое спасибо за ваш быстрый ответ и объяснение!