7
データが必要なノードの名前がすべて同じXMLファイルがあります。私は最初の(または2番目のレコード)へのアクセス方法を理解しているので、次のクエリで2番目の著者(<a1>
タグ)のみが表示されます。すべての著者を単一の列として取得するにはどうすればよいですか?SQL Serverを使用して同じ名前のXMLノードからすべてのデータを取得する
DECLARE @MyXML XML
SET @MyXML = '<refworks>
<reference>
<rt>Journal Article</rt>
<sr>Print(0)</sr>
<id>869</id>
<a1>Aabye,Martine G.</a1>
<a1>Hermansen,Thomas Stig</a1>
<a1>Ruhwald,Morten</a1>
<a1>PrayGod,George</a1>
<a1>Faurholt-Jepsen,Daniel</a1>
<a1>Jeremiah,Kidola</a1>
<a1>Faurholt-Jepsen,Maria</a1>
<a1>Range,Nyagosya</a1>
</reference>
</refworks>'
SELECT
author.value('(a1)[2]', 'varchar(MAX)') AS 'Author'
FROM @MyXML.nodes('/refworks/reference') AS ref(author)
恐ろしいデータをフィルタリングするための句からで子ノード.Specify正しい軌道に乗っていた
くらいsimplier道 - :更新
またはmanipulating xml data in sql server
。それが何をしているのかを説明するリンクを教えていただけますか? – user918967
あなたがまだ疑問を持っているかどうか教えてください。 – praveen
@praveenここで私の質問を見てください。http://stackoverflow.com/questions/27638108/how-to-get-specific-result- from-a-search-in-a-sql-column-populated-with-xml – SearchForKnowledge