XMLファイルを単一の列「データ」に格納する「xml」というテーブルがあるとします。XPath を実行し、その XPath に一致する行のみを返す MySQL クエリを作成するにはどうすればよいですか?
ripper234
質問する
11700 次
2 に答える
9
SELECT * FROM xml
WHERE EXTRACTVALUE(data, '<xpath-expr>') != '';
ただし、MySQL の XPath のサポートには制限があることに注意してください。
EXTRACTVALUE()
CDATA のみを返します。- すべての XPath 構造がサポートされているわけではありません。abatishchevの回答に記載されているドキュメントページの「XPathの制限」という見出しの下の詳細。
于 2008-12-08T17:04:35.470 に答える
0
同僚から回答を得たところです。xml をトリミングすると役立つことが多いようです。
select * from xml where
trim(both '\r\n' from ExtractValue(xml, '/some/xpath')) = 'value';
于 2008-12-08T17:21:28.293 に答える