Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Multidimensional Expressions (MDX)'de neredeyse her nesnede dizi fonksiyonları kullanabilirsiniz. Kayıtlı prosedürlerde, dizi fonksiyonları öncelikle nesneyi bir string temsiline dönüştürmek için kullanılır. Ayrıca, bir nesne üzerinde bir diz ifadesini değerlendirmek için string fonksiyonları kullanarak bir değer döndürebilirsiniz.
En yaygın kullanılan dize fonksiyonları İsim ve Benzersiz Addır. Bu fonksiyonlar sırasıyla bir nesnenin adını ve benzersiz adını döndürür. Çoğunlukla, bir fonksiyonun hangi üyeyi geri döndüğünü bulmak için hata ayıklama hesaplamalarında kullanılırlar.
Examples
Aşağıdaki örnek sorgular bu fonksiyonların nasıl kullanılacağını gösterir:
WITH
//Returns the name of the current Product on rows
MEMBER [Measures].[ProductName] AS [Product].[Product].CurrentMember.Name
//Returns the uniquename of the current Product on rows
MEMBER [Measures].[ProductUniqueName] AS [Product].[Product].CurrentMember.Uniquename
//Returns the name of the Product dimension
MEMBER [Measures].[ProductDimensionName] AS [Product].Name
SELECT {[Measures].[ProductName],[Measures].[ProductUniqueName],[Measures].[ProductDimensionName]}
ON COLUMNS,
[Product].[Product].MEMBERS ON ROWS
FROM [Adventure Works]
Generate fonksiyonu, bir kümenin her üyesinde bir dizi fonksiyonu çalıştırmak ve sonuçları birleştirmek için kullanılabilir. Bu, hesaplamalarda hata ayıklama yaparken de faydalı olabilir çünkü bir setin içeriğini görselleştirmenizi sağlar. Aşağıdaki örnek, bu şekilde nasıl kullanılacağını gösterir:
WITH
//Returns the names of the current Product and its ancestors up to the All Member
MEMBER [Measures].[AncestorNames] AS
GENERATE(
ASCENDANTS([Product].[Product Categories].CurrentMember)
, [Product].[Product Categories].CurrentMember.Name, ", ")
SELECT
{[Measures].[AncestorNames]}
ON COLUMNS,
[Product].[Product Categories].MEMBERS ON ROWS
FROM [Adventure Works]
Yaygın olarak kullanılan bir diğer dizi fonksiyonları grubu, bir nesnenin benzersiz adını veya nesneye çözümlenen bir ifadeyi içeren bir diziyi nesnenin içine dökebilmenizi sağlayan fonksiyonlardır. Aşağıdaki örnek sorgu, StrToMember ve StrToSet fonksiyonlarının bunu nasıl yaptığını gösterir:
SELECT
{StrToMember("[Measures].[Inter" + "net Sales Amount]")}
ON COLUMNS,
StrToSet("{
[Product].[Product Categories].[Category].&[3],
[Product].[Product Categories].[Product].&[477],
[Product].[Product Categories].[Product].&[788],
[Product].[Product Categories].[Product].&[708],
[Product].[Product Categories].[Product].&[711]
}")
ON ROWS
FROM [Adventure Works]
Note
StrToMember ve StrToSet fonksiyonları dikkatli kullanılmalıdır. Hesaplama tanımları içinde kullanılırlarsa, kötü sorgu performansına yol açabilirler.