Freigeben über


Spalten ohne Namen

Spalten ohne Namen werden als Inlinespalten betrachtet. Beispielsweise werden namenlose Spalten für berechnete Spalten oder geschachtelte skalare Abfragen, die keinen Spaltenalias angeben, generiert. Wenn die Spalte vom Typ xml ist, wird der Inhalt dieser Datentypinstanz eingefügt. Anderenfalls wird der Inhalt der Spalte als Textknoten eingefügt.

SELECT 2+2
FOR XML PATH

Erstellen Sie diesen XML-Code. Standardmäßig wird im XML-Ergebnis für jede Zeile des Rowsets ein <row>-Element generiert. Dies entspricht dem RAW-Modus.

<row>4</row>

Die folgende Abfrage gibt ein Rowset mit drei Spalten zurück. Die dritte, namenlose Spalte enthält XML-Daten. Der PATH-Modus fügt eine Instanz des XML-Typs ein.

USE AdventureWorks2008R2;
GO
SELECT ProductModelID,
       Name,
       Instructions.query('declare namespace MI="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelManuInstructions";
                /MI:root/MI:Location 
              ') 
FROM Production.ProductModel
WHERE ProductModelID=7
FOR XML PATH ;
GO

Dies ist das Teilergebnis:

<row>

<ProductModelID>7</ProductModelID>

<Name>HL Touring Frame</Name>

<MI:Location ...LocationID="10" ...></MI:Location>

<MI:Location ...LocationID="20" ...></MI:Location>

...

</row>

Siehe auch

Konzepte