2013-03-14 54 views
1

我們有一個事實表,它具有日期時間字段[日誌條目]。[時間條目]。MDX查詢如何通過事實表來篩選參數datetime屬性

我們想篩選基於日期範圍以下查詢:

SELECT 
    NON EMPTY { [Measures].[Average Total Time] } ON COLUMNS, 
    NON EMPTY { ([User Property].[UserProperty].[Id].ALLMEMBERS * [Log Entry].[Time Entry].[Logged On].ALLMEMBERS) } 
DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_UNIQUE_NAME ON ROWS 
FROM [MyCube] 

:(即開始日期和結束日期2個參數),其中[日誌條目] [時間輸入]是兩個提供的日期之間我希望避免創建時間表/維度,並能夠將這些日期(通過參數傳入)與[日誌條目] [時間條目]進行比較。

SQL之間的概念(datedate和date2之間的某些日期)。

我們該怎麼做?

回答

0

您應該使用範圍表達式。請看看這裏:http://msdn.microsoft.com/en-us/library/ms146001%28v=sql.105%29.aspx

你的WHERE子句中應該尋找例如:

WHERE (
    [Time].[Month Name].&[August 2009] 
    : 
    [Time].[Month Name].&[June 2012] 
    ) 

UPDATE 以過濾軸裏面,你應該使用EXISTS子句:

* {EXISTS 
    (
     {[Log Entry].[Time Entry].[Logged On].ALLMEMBERS} 
    , 
    {[Log Entry].[Time Entry].&[20120101]:[Log Entry].[Time Entry].&[20130101]} 
    ) 
+0

Dalex - 感謝建議。但是,我不明白這個範圍如何與該範圍內的實際價值進行比較的領域進行關聯。 – pghtech 2013-03-15 13:38:59