TopSum (DMX)

Si applica a: SQL Server Analysis Services

Restituisce, in ordine di rango decrescente, le prime righe di una tabella il cui totale cumulativo corrisponde almeno a un valore specificato.

Sintassi

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

Si applica a

Espressione che restituisce una tabella, ad esempio un riferimento> a una <colonna di tabella o una funzione che restituisce una tabella.

Tipo restituito

<espressione di tabella>

Osservazioni:

La funzione TopSum restituisce la maggior parte delle righe in ordine decrescente in base al valore valutato dell'argomento dell'espressione <> di classificazione per ogni riga, in modo che la somma dei valori dell'espressione><di classificazione sia almeno il totale specificato dall'argomento <sum>. TopSum restituisce il numero più piccolo di elementi possibili, mantenendo comunque il valore di somma specificato.

Esempi

Nell'esempio seguente viene creata una query di stima sul modello Association compilato usando l'esercitazione di base sul data mining.

Per comprendere il funzionamento di TopPercent, potrebbe essere utile eseguire prima una query di stima che restituisca solo la tabella nidificata.

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  

Nota

In questo esempio il valore fornito come input contiene una virgoletta singola, e pertanto è necessario utilizzare il carattere di escape preceduto da un'altra virgoletta singola. Se non si è certi della sintassi per l'inserimento di un carattere di escape, è possibile utilizzare il generatore delle query di stima per creare la query. Quando si seleziona il valore dall'elenco a discesa, viene automaticamente inserito il carattere di escape necessario. Per altre informazioni, vedere Creare una query Singleton in Progettazione modelli di data mining.

Risultati dell'esempio:

Modello $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

La funzione TopSum accetta i risultati di questa query e restituisce le righe con i valori maggiori che sommano al conteggio specificato.

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  

Il primo argomento della funzione TopSum è il nome di una colonna di tabella. In questo esempio la tabella nidificata viene restituita chiamando la funzione Predict e usando l'argomento INCLUDE_STATISTICS.

Il secondo argomento della funzione TopSum è la colonna nella tabella nidificata usata per ordinare i risultati. In questo esempio l'opzione INCLUDE_STATISTICS restituisce le colonne $SUPPORT, $PROBABILTY e $ADJUSTED PROBABILITY. Viene utilizzato $ PROBABILITY per restituire le righe che rappresentano almeno la probabilità del 50%.

Il terzo argomento della funzione TopSum specifica la somma di destinazione, come double. Per ottenere le righe dei primi prodotti che rappresentano il 50 percento di probabilità, digitare .5.

Risultati dell'esempio:

Modello $SUPPORT $PROBABILITY $ADJUSTEDPROBABILITY
Sport-100 4334 0.29... 0.25...
Water Bottle 2866 0.19... 0.17...
Patch kit 2113 0.14... 0.13...

Nota Questo esempio viene fornito solo per illustrare l'utilizzo di TopSum. A seconda della dimensione del set di dati, questa query potrebbe impiegare molto tempo per l'esecuzione.

Vedi anche

Funzioni (DMX)
Funzioni di stima correlate (DMX)
TopPercent (DMX)