0

MySQL/MariaDB のテーブルで XML からノードの値を選択しようとしています

MySQL ドキュメントによると、MySQL ではfollowing-siblingXPath 軸としてサポートされていません。代替手段はありますか?

ドキュメント: http://dev.mysql.com/doc/refman/5.1/en/xml-functions.html#function_extractvalue

私の XML 構造は次のようになります。

<fields>
    <record>
        <id>10</id>
        <value>Foo</value>
    </record>
    <record>
        <id>20</id>
        <value>Bar</value>
    </record>
</fields>

ID 10 のレコードを見つけて、テキストを取得する必要があります<value></value>

有効な XPath は次のよう/fields/record/id[text()=10]/following-sibling::value/text()になります。Foo

私のオプションは何ですか?

ありがとう!

4

2 に答える 2

4

この単純なケースでは、following-sibling. 代わりにこれを試してください:

/fields/record[id[text()=10]]/value/text()

ブラケット内で タグを使用するとid、コンテキストが at のままになるため、次のスラッシュは対応する の兄弟( と同じ親を持つ)recordに降りてきます。idid

于 2013-11-14T14:39:41.317 に答える