ExtractValue不适用于更深层的XML

时间:2016-04-27 08:29:21

标签: mysql xml xpath

范围: 在MYSQL中使用ExtractValue()来解析xml数据。

面临的问题: ExtractValue()没有提供所需的输出。

实施例,

对于输入xml(列名-xml),

<rootData><rootData><rootData><rootData>123</rootData></rootData></rootData></rootData>

ExtractValue(xml,&#39; // rootData&#39;)将输出设为123,这是正确的。

然而,对于输入xml(列名-xml),

<ThisIsALongElemenetUsedForTesting><ThisIsALongElemenetUsedForTesting><ThisIsALongElemenetUsedForTesting><ThisIsALongElemenetUsedForTesting>12</ThisIsALongElemenetUsedForTesting></ThisIsALongElemenetUsedForTesting></ThisIsALongElemenetUsedForTesting></ThisIsALongElemenetUsedForTesting>

ExtractValue(xml,&#39; // ThisIsALongElemenetUsedForTesting&#39;)未提供正确的输出。而是给它一个NULL值。

注意:如果XPATH的匹配不可用,它将返回一个空字符串而不是NULL

请帮我解决问题的解决方法。

提前致谢。

1 个答案:

答案 0 :(得分:0)

这似乎是MYSQL服务器本身的一个错误。

我在MYSQL Server 5.5中遇到过这个问题,但在我升级到5.6版之后,这个问题似乎已经消失了。

这可能是MYSQL Server 5.5中可能存在的问题,解决方案是使用5.6或以上的MYSQL Server版本。

相关问题