I am doing posexplode, How to remove duplicated rows caused from parsing of the columns? I cant do distinct because there are null on several columns (before parsing).
example before posexplode:
id | cofe |
AAA | |||-9000| 4 |
BBB | 5|90 |
CCC | |
DDD | 6||||| |
EEE | |
unfortunately, the results
id | cofe
AAA |
AAA |
AAA | -9000
AAA | 4
BBB | 5
BBB | 90
CCC |
DDD | 6
DDD |
DDD |
DDD |
DDD |
EEE |
expected results
id | cofe
AAA | -9000
AAA | 4
BBB | 5
BBB | 90
CCC |
DDD | 6
EEE |
SELECT qq.id,
ss.cofe,
ss.fnte,
ss.cnte
from
(
select id,
sequence,
split (BMWA, '~')[15] AS CFEEA
split (BMWA, '~')[16] AS FTAAA
split (BMWA, '~')[17] AS CNTTA
FROM
(
select id,
sequence,
replace(bmw, '^','~') AS BMWA
from tablee
)rr
)qq
lateral view posexplode(split(replace(qq.CFEEA'|','~'),'~')) ss as r, cofe,
lateral view posexplode(split(replace(qq.FTAAA'|','~'),'~')) ss as r, fnte
lateral view posexplode(split(replace(qq.CNTTA'|','~'),'~')) ss as r, cnte
any ideas will be appreciated!