Mysql 获取具有ExtractValue的XML字符串中的节点名称?
在MySQL中,是否可以在XML中获取节点名称 我在存储过程中使用以下方法来迭代XML的节点,但使用此方法只能获取值,而不能获取节点名称:Mysql 获取具有ExtractValue的XML字符串中的节点名称?,mysql,xml,stored-procedures,xpath,Mysql,Xml,Stored Procedures,Xpath,在MySQL中,是否可以在XML中获取节点名称 我在存储过程中使用以下方法来迭代XML的节点,但使用此方法只能获取值,而不能获取节点名称: DECLARE i INT DEFAULT 1; DECLARE nrows INT DEFAULT 1; DECLARE rownum INT DEFAULT 1; DECLARE vTag VARCHAR(100) DEFAULT ''; DECLARE returnvalue TEXT DEFAULT ''; DECLARE paramXML TEX
DECLARE i INT DEFAULT 1;
DECLARE nrows INT DEFAULT 1;
DECLARE rownum INT DEFAULT 1;
DECLARE vTag VARCHAR(100) DEFAULT '';
DECLARE returnvalue TEXT DEFAULT '';
DECLARE paramXML TEXT DEFAULT '<fields><a>1</a><b>2</b><c>3</c></fields>';
SET nrows = ExtractValue(paramXML, 'count(//fields/*)');
SET rownum = 1;
WHILE rownum <= nrows DO
SET vTag= ExtractValue(paramXML, '//fields/*[$rownum]');
SET returnvalue=CONCAT(returnvalue, vTag, ';');
SET rownum = rownum + 1;
END WHILE;
SELECT returnvalue;
MySQL目前只有非常基本的XML处理函数。如以下文件所述: 重要的 仅返回CDATA,不返回可能包含在匹配标记中的任何标记,也不返回其任何内容。请参见以下示例中作为val1返回的结果 您可以安装合适的UDF,例如