select *
from tablename
where CONVERT(xml, Sections).value('(/sections/section/@value)[1]', 'varchar(1)') = 'f'
[セクション]列に次の値を持つレコードを適切に取得します。
<sections><section value="f" priority="4" /><section value="a" priority="4" /></sections>
しかし、これを見逃します:
<sections><section value="w" priority="4" /><section value="f" priority="4" /></sections>
明らかにこれは問題です" /sections/section/@value)[1]
"しかし、私は構文を理解しておらず、Googleはあまり役に立ちませんでした。ここまで到達したコードをいくつか見つけましたが、最初のタグだけでなくすべてのタグを調べるように変更する方法がわかりません。ドロップしようと[1]
しましたが、次のエラーが発生しました。
XQuery [value()]: 'value()' requires a singleton (or empty sequence), found operand of type 'xdt:untypedAtomic *'