TopSum (DMX)

platí pro: Analytické služby SQL Serveru

Vrací, v pořadí klesajícího pořadí, nejvyšší řádky tabulky, jejichž součet je alespoň stanovená.

Syntax

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

Platí pro

Výraz, který vrací tabulku, například <sloupcový odkaz> v tabulce, nebo funkci, která vrací tabulku.

Návratový typ

<Vyjádření v tabulce>

Remarks

Funkce TopSum vrací nejvyšší řádky v sestupném pořadí podle pořadí na základě vyhodnocené hodnoty argumentu <výrazu> pořadí pro každý řádek, takže součet <hodnot výrazu> hodnosti je alespoň daný součet specifikovaný argumentem <součtu> . TopSum vrací co nejmenší počet prvků, přičemž stále splňuje zadanou hodnotu součtu.

Examples

Následující příklad vytváří predikční dotaz proti modelu asociace, který jste vytvořili pomocí Základního tutoriálu pro dolování dat.

Pro pochopení fungování TopPercent může být užitečné nejprve provést predikční dotaz, který vrací pouze vnořenou tabulku.

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  

Note

V tomto příkladu obsahuje hodnota zadaná jako vstup jednu uvozovku, a proto ji je třeba předejít dalším jediným uvozovkovým znakem. Pokud si nejste jisti syntaxí pro vložení escape znaku, můžete použít Prediction Query Builder k vytvoření dotazu. Když vyberete hodnotu z rozbalovacího seznamu, vloží se za vás požadovaná postava úniku. Pro více informací viz Vytvořit dotaz pro jednorázové dotazy v návrháři dolování dat.

Příklady výsledků:

Model $SUPPORT $PROBABILITY $ADJUSTEDPROBABILITY
Sport-100 4334 0.291283016 0.252695851
Láhev vody 2866 0.192620472 0.175205052
Opravná sada 2113 0.142012232 0.132389356
Mountain Tire Tube 1992 0.133879965 0.125304948
Mountain-200 1755 0.117951475 0.111260823
Silniční dušice 1588 0.106727603 0.101229538
Cyklistická čepice 1473 0.098998589 0.094256014
Fender Set - Horský 1415 0.095100477 0.090718432
Držák láhve na kolo do terénu 1367 0.091874454 0.087780332
Silniční lahvová klec 1195 0.080314537 0.077173962

Funkce TopSum bere výsledky tohoto dotazu a vrací řádky s největšími hodnotami, které součtě odpovídají stanovenému počet.

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  

Prvním argumentem funkce TopSum je název sloupce tabulky. V tomto příkladu se vnořená tabulka vrátí voláním funkce Predikce a použitím argumentu INCLUDE_STATISTICS.

Druhým argumentem funkce TopSum je sloupec v vnořené tabulce, který používáte k pořadí výsledků. V tomto příkladu volba INCLUDE_STATISTICS vrací sloupce $SUPPORT, $PROBABILITY a $ADJUSTED PRAVDĚPODOBNOST. Tento příklad používá $PROBABILITY k vrácení řádků, jejichž součet je alespoň 50% pravděpodobnosti.

Třetí argument funkce TopSum specifikuje cílový součet jako dvojnásobek. Pro získání řádků pro nejlepší součiny, které dávají 50% pravděpodobnost, zadáte 0,5.

Příklady výsledků:

Model $SUPPORT $PROBABILITY $ADJUSTEDPROBABILITY
Sport-100 4334 0.29... 0.25...
Láhev vody 2866 0.19... 0.17...
Opravná sada 2113 0.14... 0.13...

Poznámka Tento příklad je uveden pouze k ilustraci použití TopSum. V závislosti na velikosti vašeho datového souboru může tento dotaz trvat dlouho.