Aracılığıyla paylaş


Yerel adı işlev (XQuery)

Yerel adı kısmını verir $argolarak ya da sıfır uzunluğunda bir dize olacaktır ya da sözlü bir XS şeklinde olacak bir XS. Bağımsız değişkeni sağlanmazsa, varsayılan bağlam düğümdür.

Sözdizimi

fn:local-name() as xs:string
fn:local-name($arg as node()?) as xs:string

fn:local-name() as xs:string
fn:local-name($arg as node()?) as xs:string

Bağımsız değişkenler

  • $arg
    Düğüm adı olan yerel adı bölümü alınır.

Açıklamalar

  • SQL Server, fn:local-name() olmadan bağımsız değişken yalnızca içerik bağımlı yüklemi içeriğinde kullanılabilir. Özellikle, bu yalnızca parantez içinde kullanılabilir ([ ]).

  • Argüman sağlanır ve boş sırası ise, sıfır uzunluklu dize işlev verir.

  • Hedef düğüm adı, varsa, belge düğümü, yorum veya metin düğümü olduğundan, sıfır uzunluklu dize işlev verir.

Örnekler

Bu konu çeşitli depolanan xml örnekleri karşı XQuery örnekler sağlar xml AdventureWorks veritabanındaki sütunları yazın. Bu sütunlar genel bakış için bkz: DEL - xml Data Type Representation in the AdventureWorks2008R2 Database.

A.Belirli bir düğüm yerel adını al

Aşağıdaki sorgu yazılmamış xml örneği karşı belirtildi. Sorgu ifadesi local-name(/ROOT[1]), belirtilen düğüm yerel ad parçası alır.

declare @x xml
set @x='<ROOT><a>111</a></ROOT>'
SELECT @x.query('local-name(/ROOT[1])')
-- result = ROOT

declare @x xml
set @x='<ROOT><a>111</a></ROOT>'
SELECT @x.query('local-name(/ROOT[1])')
-- result = ROOT

Aşağıdaki sorgu yönergeleri sütunu karşı bir yazılı xml, ProductModel tablo belirtildi. İfade, local-name(/AWMI:root[1]/AWMI:Location[1]), yerel ad verir Location, belirtilen düğüm.

SELECT Instructions.query('
declare namespace AWMI="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelManuInstructions" ;
     local-name(/AWMI:root[1]/AWMI:Location[1])') as Result
FROM Production.ProductModel
WHERE ProductModelID=7
-- result = Location

SELECT Instructions.query('
declare namespace AWMI="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelManuInstructions" ;
     local-name(/AWMI:root[1]/AWMI:Location[1])') as Result
FROM Production.ProductModel
WHERE ProductModelID=7
-- result = Location

B.Yerel adı bağımsız değişkeni olmadan bir yüklemi kullanma

Aşağıdaki sorgu yazdığınız yönerge sütun karşı belirtilen xml ProductModel tablo sütun. Bu ifade tüm öğesi alt döndürür <root> öğesi olan yerel ad QName parçasıdır "Yer". Local-name() işlevi belirtilen yüklemi olarak ve içerik düğümü işlevi tarafından kullanılan bağımsız değişkenler vardır.

SELECT Instructions.query('
declare namespace AWMI="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelManuInstructions" ;
  /AWMI:root//*[local-name() = "Location"]') as Result
FROM Production.ProductModel
WHERE ProductModelID=7

SELECT Instructions.query('
declare namespace AWMI="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelManuInstructions" ;
  /AWMI:root//*[local-name() = "Location"]') as Result
FROM Production.ProductModel
WHERE ProductModelID=7

Sorgu döndürür <Location> öğesi çocuklar <root> öğesi.

Ayrıca bkz.

Başvuru

Düğümlerinde işlevleri

Kavramlar

ad alanı-uri işlev (XQuery)