array_contains関数を使用して配列内の項目を探しています。私は一致があった配列のインデックスを返すことを探しています。私の誤差がある場合Hadoop Hiveは配列から位置を取得します
select b.sku_id
,array_position(b.sku_list, b.sku_id) as matched_index
from
(select split(the_list, ',') as sku_list, sku_id
from data_table) b
where array_contains(b.sku_list, b.sku_id) = TRUE;
はこれではありません:
,array_position(b.sku_list, b.sku_id) as matched_index
誤りである理由がされている組み込みのUDFハイブでarray_positionため。一致した値のインデックスを取得するソリューションはありますか?