1

30日間で売り上げゼロの商品を手に入れたいです。例:以下は私の期待される結果です:Store、Product、Days Store1、product1、33 Store1、product2、100 Store2、product5、96 Store34、product14、78 Store100、product9、47

だから私は以下のクエリを書きました:</ p>

WITH 
MEMBER [Measures].[Zero Sales Days] 
AS 
COUNT(
     FILTER(
            NONEMPTY( [Calendar].[Date].[Day],[Measures].[POS Qty])                   
             , ( [Measures].[POS Qty]=0)
            ) 
 )

SELECT 
([Store].[Store].[Store],[product].[product].[product]) on 1,
([MEASURES].[Zero Sales Days]) ON 0
FROM [testcube]

問題は次のとおりです。ケースをフィルタリングする方法:売上ゼロの日数<30

ありがとう、ニア


変更を加えてから、DBに対して実行しました。whereの原因を追加しても何も得られませんでした。そうでない場合、結果は「#Error」になります。

時間に関連するディメンションを選択する必要はありません。レポートに対して実行したいのは、ストアと製品のディメンションを選択し、計算されたメジャーを定義してカウントを取得することです。ボヤン、それについての詳細な質問が必要な場合は、本当に感謝します。

4

2 に答える 2

2

関数LastPeriodsはあなたが探しているものです:

 WITH 
  MEMBER [Measures].[Zero Sales Days] 
  AS COUNT(
        FILTER([Calendar].[Date].[Day], 
          SUM( LastPeriods(30, [Calendar].[Date].currentmember),[Measures].[POS Qty]) 
          = 0 )
        ) 
 SELECT 
  ([Store].[Store].[Store],[product].[product].[product]) on 1,
  ([MEASURES].[Zero Sales Days]) ON 0
 FROM [testcube]
于 2011-07-28T11:43:19.987 に答える
1

次のクエリは、Adventure Works に対して機能し、WHERE 句の日付から 30 日以上販売されていない製品を表示します。

WITH
MEMBER [Measures].[Number of Periods With No Sales] AS
    Iif(([Date].[Date].CurrentMember, [Measures].[Internet Sales Amount])=0,
        ([Date].[Date].PrevMember, [Measures].[Number of Periods With No Sales])+1,
        NULL
    )
MEMBER [Measures].[Number of > 30 Periods With No Sales] AS
    Sum(
        Iif([Measures].[Number of Periods With No Sales] > 30,
            [Measures].[Number of Periods With No Sales],
            NULL
        )
    )
SELECT
{
    [Measures].[Number of > 30 Periods With No Sales]
} ON 0,
NON EMPTY {
    [Product].[Product Categories].[Product]
} ON 1
FROM [Adventure Works]
WHERE [Date].[Calendar].[Date].&[860]

データベースに対して機能させるには、再加工する必要があります (ディメンション/メジャー名を変更します)。日付に関係なく、売上のない 30 日を超える期間が少なくとも 1 つあるすべての製品を提供できるクエリが必要な場合はお知らせください (例: 売上のない最大期間、または任意のそのような期間)。これにはいくつかの変更が必要です。また、クエリは再帰を使用しているため、低速になる可能性があります。低速すぎる場合は、パフォーマンスを改善する方法を確認できます。この分析をサポートするには、データ モデルの変更が必要になる場合があります。

于 2011-07-29T07:08:15.353 に答える