Улей запрос, чтобы получить ожидаемый результат - PullRequest
0 голосов
/ 31 августа 2018

Я новичок в улье. Я получил требование для создания запроса. У меня есть таблица с 3 столбцами (ENO, ENAME, LOCATION)

ENO, ENAME, LOCATION
001, XYZ, HYD
002, ABC, MU

Мне нужен вывод, как показано ниже.

001, XYZ, H
001, XYZ, Y
001, XYZ, D
002, ABC, M
002, ABC, U 

Это вывод, который я ищу, у кого есть идея получить это.

Спасибо, Ranjith

Ответы [ 2 ]

0 голосов
/ 31 августа 2018

Попробуйте использовать команду explode вместе с split для достижения указанного результата.

Запрос:

SELECT ENO,ENAME,SPLIT_LOC FROM <TABLE NAME> LATERAL VIEW explode(split(LOCATION,'')) EXPLOCATION AS SPLIT_LOC

разделение LOCATION на '' разделит ваши данные на символ.

Надеюсь, это поможет:)

0 голосов
/ 31 августа 2018

Разделите строку в 3-м столбце и используйте разнесение, чтобы преобразовать значения массива столбца в строки.

select * from
(
   select 
     ENO, 
     ENAME,
     lateral view explode(split(LOCATION,'')) AS LOCATION
   from
     table_name
 )
 where LOCATION != '';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...