Взорвать массив структур в улье
Это таблица ниже улья
CREATE EXTERNAL TABLE IF NOT EXISTS SampleTable
(
USER_ID BIGINT,
NEW_ITEM ARRAY<STRUCT<PRODUCT_ID: BIGINT,TIMESTAMPS:STRING>>
)
И это данные в приведенной выше таблице
1015826235 [{"product_id":220003038067,"timestamps":"1340321132000"},{"product_id":300003861266,"timestamps":"1340271857000"}]
Есть ли способ получить приведенный ниже вывод из HiveQL после взрыва массива?
**USER_ID** | **PRODUCT_ID** | **TIMESTAMPS**
------------+------------------+----------------
1015826235 220003038067 1340321132000
1015826235 300003861266 1340271857000
Updated
Я написал этот запрос, чтобы получить вывод в вышеуказанном формате, но он не дает мне результат так, как я хотел.
SELECT myTable1.myCol1,myTable2.myCol2 FROM sampletable st LATERAL VIEW
explode(st.purchased_item.product_id) myTable1 AS myCol1 LATERAL VIEW
explode(st.purchased_item.timestamps) myTable2 AS myCol2;
Может кто-нибудь помочь мне, что я делаю неправильно? Любые предложения будут оценены.