Я пытаюсь вставить записи в struct внутри структуры в улье

#data-structures #struct #hive

#структуры данных #структура #улей

Вопрос:

Определил таблицу со struct внутри struct, как показано ниже

 CREATE TABLE IF NOT EXISTS test12(
source_row_nbr  int, 
claim_record STRUCT < claim_sub_record1: STRUCT<claim_nbr:INT,claim_txt:CHAR(10)>,  
                      claim_sub_record2: STRUCT<claim_nbr:INT,claim_addr:CHAR(20)>>
)  stored as ORC 
TBLPROPERTIES('orc.compress'='SNAPPY','transactional'='false');
  

Как вставить запись с помощью NAMED_STRUCT ключевого слова

Ответ №1:

 insert into table test12
select 1             as source_row_nbr ,
       named_struct('claim_sub_record1', named_struct('claim_nbr',123,'claim_txt','claim 123'),
                    'claim_sub_record2', named_struct('claim_nbr',124,'claim_txt','claim 124')
                   ) as claim_record  
  from dummy_table limit 1;