Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2025 09:28 AM
@BNV , little more complex querying to convert XML into rows use below query. For your case just replace XML string with column containing XML value, spark will handle.
select c_value as colID, v_value as value from(select
posexplode(
xpath(
'''
<XMLData>
<Values>
<ValueDefinition colID="10" Value="Red"/>
<ValueDefinition colID="20" Value="Square"/>
<ValueDefinition colID="3" Value=""/>
</Values>
</XMLData>''',
'//ValueDefinition/@colID'
)
) as (c_index, c_value),
posexplode(
xpath(
'''
<XMLData>
<Values>
<ValueDefinition colID="10" Value="Red"/>
<ValueDefinition colID="20" Value="Square"/>
<ValueDefinition colID="3" Value=""/>
</Values>
</XMLData>''',
'//ValueDefinition/@Value'
)
) as (v_index, v_value))
where c_index = v_index
Regards,
Hari Prasad
Regards,
Hari Prasad