2008-12-08 60 views

回答

7
SELECT * FROM xml 
WHERE EXTRACTVALUE(data, '<xpath-expr>') != ''; 

但是,您應該注意到,MySQL對XPath的支持存在限制。

  • EXTRACTVALUE()僅返回CDATA。
  • 並非所有XPath結構都受支持。在abatishchev的回答中提到的doc page中的「XPath限制」標題下的詳細信息。
0

我剛接到一個同事的回答,似乎修剪XML經常幫助:

select * from xml where 
    trim(both '\r\n' from ExtractValue(xml, '/some/xpath')) = 'value';