当我做
SELECT resrev_meta FROM resourcerevs WHERE resrev_meta LIKE '%attr%';
Run Code Online (Sandbox Code Playgroud)
我得到这样的结果
<attr><fileid>131</fileid></attr>
<attr><fileid>326</fileid><width>360</width><height>640</height></attr>
Run Code Online (Sandbox Code Playgroud)
题
是否有可能只能在<fileid>和之间输出数字的RegEx </fileid>?
正则表达式可能不是你想要的.mysql支持xpath表达式.
这应该给你你需要的东西:
SELECT ExtractValue(resrev_meta,'//fileid') AS fileid
FROM resourcerevs
WHERE resrev_meta LIKE '%attr%';
Run Code Online (Sandbox Code Playgroud)
http://dev.mysql.com/doc/refman/5.1/en/xml-functions.html#function_extractvalue
mysql> SELECT
-> ExtractValue('<a>ccc<b>ddd</b></a>', '/a') AS val1,
-> ExtractValue('<a>ccc<b>ddd</b></a>', '/a/b') AS val2,
-> ExtractValue('<a>ccc<b>ddd</b></a>', '//b') AS val3,
-> ExtractValue('<a>ccc<b>ddd</b></a>', '/b') AS val4,
-> ExtractValue('<a>ccc<b>ddd</b><b>eee</b></a>', '//b') AS val5;
+------+------+------+------+---------+
| val1 | val2 | val3 | val4 | val5 |
+------+------+------+------+---------+
| ccc | ddd | ddd | | ddd eee |
+------+------+------+------+---------+
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
139 次 |
| 最近记录: |