[ad_1]
やあ、
以下のサンプル xml から親要素名を取得する必要があります。 以下のクエリを試したところ、すべての子の名前を含むすべての要素名も取得できました。 しかし、xml からの親要素名だけが必要です。
SQL
DECLARE @xml xml = '<root> <country> <id>1</id> <code>CY</code> <name>cyprus</name> <isocode>CYP</isocode> </country> <country> <id>110</id> <code>JP</code> <name>Japan</name> <isocode>JPN</isocode> </country> <country> <id>155029</id> <code>IN</code> <name>India</name> <isocode>IND</isocode> </country> <rank> <id>3</id> <code>C/O TRN</code> <rankname>CHIEF OFFICER TRAINEE</rankname> </rank> <rank> <id>105354</id> <code>MAS</code> <rankname>MASTER</rankname> </rank> <rank> <id>105355</id> <code>C/E</code> <rankname>CHIEF ENGINEER</rankname> </rank> </root>' SELECT Nodes.Name.query('local-name(.)') AS 'NAMES' FROM @xml.nodes('//*') As Nodes(Name)
上記のクエリの出力は、
root country id code name isocode country rank id code rankname rank id code rankname rank id code rankname
必要な出力:(xml からの親要素名のみ)
国
ランク
私が試したこと:
This is the query i have tried, SELECT Nodes.Name.query('local-name(.)') AS 'NAMES' FROM @xml.nodes('//*') As Nodes(Name)
解決策 1
私はかつてこの問題を抱えていましたが、正直なところコードを忘れていました。 インドのYoutuberさんからいただきました。 その日、文字通り私の命を救ってくれました。
[ad_2]
コメント