Мне нужно создать представление поверх данных JSON, присутствующих в файлах.Данные содержат вложенные структуры.Я использую org.openx.data.jsonserde.JsonSerDe для создания внешней таблицы DDL:
CREATE EXTERNAL TABLE SPECTURM.STUD_DETAILS_REF(
ID VARCHAR,
NAME VARCHAR,
FRM STRUCT<
ID:VARCHAR,
NAME:VARCHAR
>
)
ROW FORMAT serde 'org.openx.data.jsonserde.JsonSerDe'
WITH SERDEPROPERTIES ( 'case.insensitive' = 'false','mapping.frm' = 'from')
LOCATION 'USER/HOME/LOCATION'
Я использую запрос для создания представления:
CREATE OR REPLACE VIEW VW_STUD_DETAILS AS
SELECT S.ID AS STUDENT_ID,
S.NAME STUDENT_NAME,
S.FRM.NAME STUD_LOCATION_NAME,
S.FRM.ID STUD_LOCATION_ID,
FROM SPECTURM.STUD_DETAILS_REF S
WITH NO SCHEMA BINDING
Я выбираю данные извнешнюю таблицу и создали вид сверху.Но получение повторяющихся записей для нескольких записей.
Получение ОШИБКИ: XX000: Ошибка запроса вложенного спектра
- Группировка по каждому полю в запросе выбора.
- функция rank_over ()
Мне нужны уникальные записи, даже если данные вложены.