共用方式為


TopSum (DMX)

以遞減次序的順序,傳回累計總和至少達指定值的最上方資料表資料列。

語法

TopSum(<table expression>, <rank expression>, <sum>)

適用於

傳回資料表 (例如 <table column reference>) 的運算式,或者傳回資料表的函數。

傳回類型

<table expression>

備註

TopSum 函數根據每個資料列之 <rank expression> 引數的評估值,以遞減的次序順序傳回最頂部的資料列,只要 <rank expression> 值的總和至少為 <sum> 引數所指定的給定總和。TopSum 就會傳回符合指定之總和值的可能最小元素數目。

範例

下列範例會針對您使用資料採礦基本教學課程建立的關聯模型,建立預測查詢。

為了解 TopSum 如何運作,先執行僅傳回巢狀資料表的預測查詢可能相當實用。

SELECT Predict ([Association].[v Assoc Seq Line Items], INCLUDE_STATISTICS, 10)
FROM 
     [Association]
NATURAL PREDICTION JOIN
SELECT (SELECT 'Women''s Mountain Shorts' as [Model]) AS [v Assoc Seq Line Items]) AS t

[!附註]

在此範例中,當做輸入提供的值包含單引號,因此必須在該值前面加上另一個單引號來逸出。如果您不確定插入逸出字元的語法,可以使用預測查詢產生器來建立查詢。當您從下拉式清單選取值時,就會為您插入所需的逸出字元。如需詳細資訊,請參閱<如何:在資料採礦設計師中建立單一查詢>。

範例結果:

模型

$SUPPORT

$PROBABILITY

$ADJUSTEDPROBABILITY

Sport-100

4334

0.291283016

0.252695851

Water Bottle

2866

0.192620472

0.175205052

Patch kit

2113

0.142012232

0.132389356

Mountain Tire Tube

1992

0.133879965

0.125304948

Mountain-200

1755

0.117951475

0.111260823

Road Tire Tube

1588

0.106727603

0.101229538

Cycling Cap

1473

0.098998589

0.094256014

Fender Set - Mountain

1415

0.095100477

0.090718432

Mountain Bottle Cage

1367

0.091874454

0.087780332

Road Bottle Cage

1195

0.080314537

0.077173962

TopSum 函數會採用此查詢的結果,並傳回具有加總為指定計數之最大值的資料列。

SELECT 
TopSum
    (
    Predict([Association].[v Assoc Seq Line Items],INCLUDE_STATISTICS,10),
    $PROBABILITY,
    .5)
FROM 
     [Association]
NATURAL PREDICTION JOIN
(SELECT (SELECT 'Women''s Mountain Shorts' as [Model]) AS [v Assoc Seq Line Items]) AS t

TopSum 函數的第一個引數為資料表資料行的名稱。在此範例中,巢狀資料表會透過呼叫 Predict 函數並使用 INCLUDE_STATISTICS 引數傳回。

TopSum 函數的第二個引數是巢狀資料表中,您用於排序結果的資料行。在此範例中,INCLUDE_STATISTICS 選項會傳回資料行 $SUPPORT、$PROBABILTY 和 $ADJUSTED PROBABILITY。此範例會使用 $PROBABILITY 傳回加總為至少 50% 機率的資料列。

TopSum 函數的第三個引數會將目標總和指定為雙精度浮點數。若要取得加總為百分之 50 機率之重要產品的資料列,請輸入 .5。

範例結果:

型號

$SUPPORT

$PROBABILITY

$ADJUSTEDPROBABILITY

Sport-100

4334

0.29…

0.25…

Water Bottle

2866

0.19…

0.17…

Patch kit

2113

0.14…

0.13…

[!附註]

提供這個範例只是為了說明 [TopSum] 的使用方式。根據資料集的大小而定,此查詢可能會花上很長的一段執行時間。