DECLARE @XmlData xml
SET @XmlData= '<?xml version="1.0" encoding="utf-8" ?>
<ROOT PROCESS_DATE="25-Nov-2009" ROW_COUNT="2" VERIFY_TOTAL="654454.54">
<row rowNumber="1">
<Code1>11111</Code1>
<Code2>AAAA </Code2>
</row>
<row rowNumber="2">
<Code1>2222</Code1>
<Code2>BBBB </Code2>
</row>
</ROOT>'
-- Following query returns the Code1, & Code2 for each row.
SELECT
R.i.query('Code1').value('.', 'nvarchar(8)') AS Code1,
R.i.query('Code2').value('.', 'nvarchar(8)') AS Code2
FROM @XmlData.nodes('/ROOT/row') R(i)
-- Now I want to get the rowNumber attribute of each row in the resultset.
SELECT
R.i.query('@rowNumber') AS rowNumber,
R.i.query('Code1').value('.', 'nvarchar(8)') AS Code1,
R.i.query('Code2').value('.', 'nvarchar(8)') AS Code2
FROM @XmlData.nodes('/ROOT/row') R(i)
-- Above query returns error
1
A
Répondre
0
Je n'ai pas SQL Server à portée de main, mais mon instinct me dit d'essayer:
R.i.query('.').value('@rowNumber', 'int') AS rowNumber
0
Vous pouvez interroger l'attribut avec la solution de contournement data()
:
R.i.query('data(row/@Name)').value('.','int') AS rowNumber
2
DECLARE @x XML ;
SET @x = '<?xml version="1.0" encoding="utf-8" ?>
<ROOT PROCESS_DATE="25-Nov-2009" ROW_COUNT="2" VERIFY_TOTAL="654454.54">
<row rowNumber="1">
<Code1>11111</Code1>
<Code2>AAAA </Code2>
</row>
<row rowNumber="2">
<Code1>2222</Code1>
<Code2>BBBB </Code2>
</row>
</ROOT>' ;
SELECT v.value('.', 'VARCHAR(20)') AS Name
FROM @x.nodes('(/ROOT/row/@*)') x (v)
Questions connexes
- 1. get attribut du fichier xml
- 2. Comment puis-je obtenir un attribut XML?
- 3. Comment renommer un attribut en XML?
- 4. attribut xml à un tableau
- 5. lire un flux xml
- 6. comment spécifier élément XML ayant un attribut xml
- 7. Modifier la valeur du dernier attribut dans un XML C#
- 8. attribut de xml
- 9. Ajouter un attribut XML Namespace à un fichier XML tiers?
- 10. Comment ajouter un attribut à un élément de schéma xml?
- 11. Comment lire un fichier XML local
- 12. Comment lire un fichier XML avec Java?
- 13. Comment lire un attribut sur une classe lors de l'exécution?
- 14. obtenir attribut xml LINQ
- 15. LINQ to XML Débutant Question: Lire xml et classer par attribut
- 16. Comment ajouter un attribut à un élément XmlArray (XML Serialization)?
- 17. comment rendre un attribut unique dans un schéma XML?
- 18. Comment ajouter un attribut à un noeud XML sérialisé?
- 19. Modifier un attribut XML unique en C#
- 20. Comment puis-je ajouter un attribut à un nœud XML en fonction d'un autre attribut?
- 21. Lire des données spécifiques du fichier XML
- 22. Comment lire la valeur d'un attribut défini dans app.config?
- 23. ASP.NET Lire XML externe du site
- 24. Diff XML correspondant à un attribut spécifique
- 25. Lire les données du fichier xml
- 26. trouver l'élément xml par attribut
- 27. C# LINQ - lire un fichier XML
- 28. comment lire dynamiquement la valeur du nœud xml?
- 29. Comment lire XML CDATA contenu
- 30. xml parser impossible de lire tous les nœuds du xml