Colonnes avec un nom spécifié sous la forme d'un caractère générique
Si le nom de colonne spécifié est un caractère générique (*), le contenu de la colonne concernée est inséré comme si aucun nom de colonne n'était spécifié. Si cette colonne est une colonne de type non-xml, le contenu de la colonne est inséré en tant que nœud de texte, comme le montre l'exemple suivant :
USE AdventureWorks2012;
GO
SELECT E.BusinessEntityID "@EmpID",
FirstName "*",
MiddleName "*",
LastName "*"
FROM HumanResources.Employee AS E
INNER JOIN Person.Person AS P
ON E.BusinessEntityID = P.BusinessEntityID
WHERE E.BusinessEntityID=1
FOR XML PATH;
Voici le résultat obtenu :
<row EmpID="1">KenJSánchez</row>
Si la colonne est de type xml, l'arborescence XML correspondante est insérée. Par exemple, la requête suivante spécifie « * » pour le nom de la colonne qui contient le document XML renvoyé par la requête XQuery portant sur la colonne Instructions.
SELECT
ProductModelID,
Name,
Instructions.query('declare namespace MI="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelManuInstructions"
/MI:root/MI:Location
') as "*"
FROM Production.ProductModel
WHERE ProductModelID=7
FOR XML PATH;
GO
Voici le résultat obtenu : le document XML renvoyé par la requête XQuery est inséré sans élément d'habillage.
<row>
<ProductModelID>7</ProductModelID>
<Name>HL Touring Frame</Name>
<MI:Location LocationID="10">...</MI:Location>
<MI:Location LocationID="20">...</MI:Location>
...
</row>