Huruvida det är bra eller dåligt att fragmentera XML på servern i stället för att göra det på klienten beror på en mängd olika faktorer, kraven kan vara helt giltiga. Att strimla XML på servern, med tanke på det omfattande stödet SQL Server 2005 och senare för XML (XPath/XQuery/XML-index) är ofta ett mycket förnuftigt tillvägagångssätt.
Men det du har i ditt inlägg är ett exempel på semantisk modellering av data, med hjälp av XML. Jag rekommenderar att du går igenom ett par vitböcker:
- Bästa metoder för semantisk datamodellering för prestanda och skalbarhet
- Bästa metoder för XML för Microsoft SQL Server 2005
- Prestandaoptimeringar för XML-datatypen i SQL Server 2005
- Prestandatips för att använda XML-data i SQL Server
Jag vet inte om @table1 i ditt exempel bara är ett exempel eller den faktiska datastrukturen du använder i produktionen, men vissa punkter kommer att hoppa ut direkt efter att du har läst dessa tidningar:
- använd inskriven XML när det är möjligt (lägg till ett schema)
- använd ett lämpligt XML-index för den bearbetning du behöver
- försök att strimla all XML i en enda transformation istället för tre på varandra följande steg
Och slutligen, om du behöver strimla varje När du frågar kanske du behöver analysera datamodellen (det är här det första dokumentet i min lista är användbart).