mysql> DELIMITER |mysql> CREATE PROCEDURE myproc () -> BEGIN -> DECLARE i INT DEFAULT 1; -> DECLARE xml VARCHAR(25) DEFAULT '<a>X</a><a>Y</a><a>Z</a>'; -> -> WHILE i < 4 DO -> SELECT xml, i, ExtractValue(xml, '//a[$i]'); -> SET i = i+1; -> END WHILE; -> END |
上面的代码可以依次读出 节点 <a>中的文本,如果<a>X</a><a>Y</a><a>Z</a> 在某一张表的一个特定字段中保存, 比如保存在表 test.xmlfile 中我想使用一个游标 cur 打开test表,然后一次性的将各个节点<a>中的值读出到一个数组或关系表中,
比如DECLARE cur CURSOR FOR selectExtractValue(xml, '//a') from test;
FETCH cur INTO 数组或关系表;
请问应该如何实现,mysql 是不支持数组的吧先谢谢各位的指点了