我在T-SQL方面很有經驗,但對我來說不是MDX。在SQL中使用的MDX列別名
我想要做的是查詢我們的SSAS多維數據集並將值返回到SQL視圖以用作基於多維數據集的報表中的參數。
我需要根據日期層次返回財務季節的3個值。
這是下面的代碼,它返回正確的數據。
WITH
MEMBER [CurrentHalf] AS [Date - Master].[Financial Calendar].CURRENTMEMBER.UNIQUENAME
MEMBER [NextHalf] AS [Date - Master].[Financial Calendar].LEAD(1).UNIQUENAME
MEMBER [PreviousHalf] AS [Date - Master].[Financial Calendar].LEAD(-1).UNIQUENAME
SELECT {[Date - Master].[Financial Calendar].[Season Half]} ON COLUMNS ,
{[CurrentHalf],NextHalf,PreviousHalf} ON ROWS
FROM [Sales and Stock]
WHERE (Filter([Date - Master].[DateKey].Members,[Date - Master].[DateKey].MemberValue = (format(now(),"dd/MM/yyyy"))))
但是,[Date - Master]。[Financial Calendar]。[Season Half]的列名返回標題值(例如2014-秋/冬)。
見圖片:
通常情況下,因爲我傳遞到SQL我需要一個列名來選擇關閉,這將是罰款不過。我需要的是重命名此列,其他的東西(例如HalfName)
我已經試過
WITH
MEMBER [CurrentHalf] AS [Date - Master].[Financial Calendar].CURRENTMEMBER.UNIQUENAME
MEMBER [NextHalf] AS [Date - Master].[Financial Calendar].LEAD(1).UNIQUENAME
MEMBER [PreviousHalf] AS [Date - Master].[Financial Calendar].LEAD(-1).UNIQUENAME
MEMBER [HalfName] as [Date - Master].[Financial Calendar].[Season Half].CURRENTMEMBER.VALUE
SELECT {[HalfName]} ON COLUMNS ,
{[CurrentHalf],NextHalf,PreviousHalf} ON ROWS
FROM [Sales and Stock]
WHERE (Filter([Date - Master].[DateKey].Members,[Date - Master].[DateKey].MemberValue = (format(now(),"dd/MM/yyyy"))))
但是,這仍然沒有奏效。
任何幫助將不勝感激。
感謝
我想你正在等待你的MDX查詢返回矩陣。如果您更改原始查詢以在列上選擇任何內容(空括號),會發生什麼情況?這是否給你你想要的東西? – mmarie
你想看到什麼結果?以及如何與SQL進行交互?通過鏈接服務器? – FrankPl