Общий синтаксис для создания named_struct в кустах и ​​до - PullRequest
0 голосов
/ 28 февраля 2020

Я пытаюсь определить представление sql, которое выбирает подмножество элементов из типа данных исходной структуры и создает новую структуру. В улье я могу сделать это:

create view myview as 
select
    id,
    named_struct("cnt", bkg.cnt, "val", bkg.val) as bkg
from mybkgtable

Это работает. Проблема в том, что когда это представление вызывается из presto, оно завершается с: Function named_struct not registered

Обнаружено, что presto не имеет struct типа данных, но вместо этого имеет ROW, Он работает с этим синтаксисом:

select
    id,
    CAST(ROW(bkg.cnt, bkg.val) as row(cnt integer, val double)) as bkg
from mybkgtable

Однако этот синтаксис не понят Hive.

Вопрос в том, возможно ли иметь одно определение представления, которое работает как для улья, так и для presto?

1 Ответ

0 голосов
/ 29 февраля 2020

Вопрос в том, возможно ли иметь одно определение представления, которое работает как для улья, так и для presto?

К сожалению, нет.

...