Je me demandais puis-je ORDER BY ma requête par le noeud d'une colonne typée XML?SQL Server: ordre par le noeud de la colonne XML
Par exemple, j'ai une table
ID (int) | Les données (XML)
Où colonne stocke les données XML sous forme similaire à ce
<?xml?>
<Data>
<SimpleOrderedValue>1</SimpleOrderedValue>
<ComplicatedInternals>
...
</ComplicatedInternals>
</Data>
Je veux interroger ce tableau commandé par SimpleOrderedValue. Puis-je le faire sur MS SQL Server 2008 avec une colonne XML? Ou puis-je le faire en utilisant CLR UDT, mais sans colonne calculée additionnelle et d'une manière telle que la colonne de données a été indexée (pour une recherche plus rapide).
Apprécierez toute aide. Merci.
Merci Alex, utilisera-t-il des index si j'utilise cette expression dans la clause where? –
Il devrait faire comme le XML est seulement analysé dans le ORDER BY, donc il devrait SELECT en utilisant un index puis juste trier le résultat, si vous regardez le plan de requête, vous serez en mesure de voir. –
Vous pouvez créer des index XML: http://msdn.microsoft.com/fr-fr/library/ms191497.aspx – dyesdyes