获取正则表达式以解析表列的xml格式的数据

时间:2016-11-08 20:13:07

标签: sql regex xml hive impala

我有一个表,其中包含一个包含xml格式数据的列。 我想要做的是解析该列中的一些数据。 该表如下所示:

SalesID | SalesDetail 
--------|------------------ 
403958  | <SalesCode>4</SalesCode><SalesMessage>Same day shipping to customer in TX<SalesMessage>
453324  | <SalesCode>4</SalesCode><SalesMessage>Customer complained issues at check-out <SalesMessage>

有人可以指出使用Impala或Hive解析SalesCode和SalesMessage数据的方向吗?

我尝试了多个正则表达式,但它不能按照我想要的方式运行。任何帮助,将不胜感激!

1 个答案:

答案 0 :(得分:0)

您可以使用xpath_stringxpath_int

SELECT xpath_int (SalesDetail, 'SalesCode') as SalesCode,
       xpath_string (SalesDetail, 'SalesMessage') as SalesMessage FROM src;