TopCount (DMX)TopCount (DMX)

QUESTO ARGOMENTO SI APPLICA A:sìSQL Server (a partire dalla versione 2008)noDatabase SQL di AzurenoAzure SQL Data Warehouse noParallel Data Warehouse THIS TOPIC APPLIES TO:yesSQL Server (starting with 2008)noAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Restituisce il numero specificato di righe a partire dall'alto, in ordine di rango decrescente secondo quanto specificato da una determinata espressione.Returns the specified number of top-most rows in decreasing order of rank as specified by an expression.

SintassiSyntax


TopCount(<table expression>, <rank expression>, <count>)  

Si applica aApplies To

Un'espressione che restituisce una tabella, ad esempio un <tabella di riferimento di colonna >, o una funzione che restituisce una tabella.An expression that returns a table, such as a <table column reference>, or a function that returns a table.

Tipo restituitoReturn Type

<espressione di tabella ><table expression>

OsservazioniRemarks

Il valore fornito dal <rank expression > argomento determina l'ordine di rango decrescente per le righe che non vengano specificati nel <espressione di tabella > argomento e il numero di righe superiore specificato nella <count > viene restituito l'argomento.The value that is supplied by the <rank expression> argument determines the decreasing order of rank for the rows that are supplied in the <table expression> argument, and the number of top-most rows that is specified in the <count> argument is returned.

La funzione TopCount è stata introdotta originalmente per consentire le stime associative e in generale, produce gli stessi risultati di un'istruzione che include seleziona le prime e ORDER BY clausole.The TopCount function was originally introduced to enable associative predictions and in general, produces the same results as a statement that includes SELECT TOP and ORDER BY clauses. È possibile ottenere prestazioni migliori per le stime associative se si utilizza il stima (DMX) (funzione), che supporta la specifica di un numero di stime da restituire.You will obtain better performance for associative predictions if you use the Predict (DMX) function, which supports specification of a number of predictions to return.

Tuttavia, esistono casi in cui si potrebbe essere ancora necessario utilizzare TopCount.However, there are situations where you might still need to use TopCount. Ad esempio, DMX non supporta il TOP qualificatore in un'istruzione Sub-select.For example, DMX does not support the TOP qualifier in a sub-select statement. Il PredictHistogram ( DMX ) funzione inoltre non supporta l'aggiunta di TOP.The PredictHistogram (DMX) function also does not support the addition of TOP.

EsempiExamples

Negli esempi seguenti sono le query di stima sul modello di associazione che si compila con il Basic Data Mining Tutorial.The following examples are prediction queries against the Association model that you build by using the Basic Data Mining Tutorial. Le query restituiscono gli stessi risultati, ma il primo esempio Usa TopCount e nel secondo esempio viene utilizzata la funzione di stima.The queries return the same results, but the first example uses TopCount, and the second example uses the Predict function.

Per comprendere il funzionamento TopCount, potrebbe essere utile eseguire prima una query di stima che restituisce solo la tabella nidificata.To understand how TopCount works, it may be helpful to first execute a prediction query that returns only the nested table.

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.In this example, the value supplied as input contains a single quotation mark, and therefore must be escaped by prefacing it with another single quotation mark. 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.If you are not sure of the syntax for inserting an escape character, you can use the Prediction Query Builder to create the query. Quando si seleziona il valore dall'elenco a discesa, viene automaticamente inserito il carattere di escape necessario.When you select the value from the dropdown list, the required escape character is inserted for you. Per ulteriori informazioni, vedere creare una Query Singleton Progettazione modelli di Data Mining.For more information, see Create a Singleton Query in the Data Mining Designer.

Risultati dell'esempio:Example results:

ModelloModel $SUPPORT$SUPPORT $PROBABILITY$PROBABILITY $ADJUSTEDPROBABILITY$ADJUSTEDPROBABILITY
Sport-100Sport-100 43344334 0.2912830160.291283016 0.2526958510.252695851
Water BottleWater Bottle 28662866 0.1926204720.192620472 0.1752050520.175205052
Patch kitPatch kit 21132113 0.1420122320.142012232 0.1323893560.132389356
Mountain Tire TubeMountain Tire Tube 19921992 0.1338799650.133879965 0.1253049480.125304948
Mountain-200Mountain-200 17551755 0.1179514750.117951475 0.1112608230.111260823
Road Tire TubeRoad Tire Tube 15881588 0.1067276030.106727603 0.1012295380.101229538
Cycling CapCycling Cap 14731473 0.0989985890.098998589 0.0942560140.094256014
Fender Set - MountainFender Set - Mountain 14151415 0.0951004770.095100477 0.0907184320.090718432
Mountain Bottle CageMountain Bottle Cage 13671367 0.0918744540.091874454 0.0877803320.087780332
Road Bottle CageRoad Bottle Cage 11951195 0.0803145370.080314537 0.0771739620.077173962

La funzione TopCount accetta i risultati della query e restituisce il numero specificato di righe con valori più piccolo.The TopCount function takes the results of this query and returns the specified number of the smallest-valued rows.

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

Il primo argomento alla funzione TopCount è il nome di una colonna di tabella.The first argument to the TopCount function is the name of a table column. In questo esempio, la tabella nidificata viene restituita chiamando la funzione di stima e utilizzando l'argomento INCLUDE_STATISTICS.In this example, the nested table is returned by calling the Predict function and using the INCLUDE_STATISTICS argument.

Il secondo argomento per la funzione TopCount è la colonna nella tabella nidificata che consente di ordinare i risultati.The second argument to the TopCount function is the column in the nested table that you use to order the results. In questo esempio l'opzione INCLUDE_STATISTICS restituisce le colonne $SUPPORT, $PROBABILTY e $ADJUSTED PROBABILITY.In this example, the INCLUDE_STATISTICS option returns the columns $SUPPORT, $PROBABILTY, and $ADJUSTED PROBABILITY. In questo esempio viene utilizzato $ SUPPORT per classificare i risultati.This example uses $SUPPORT to rank the results.

Il terzo argomento per la funzione TopCount specifica il numero di righe da restituire, come numero intero.The third argument to the TopCount function specifies the number of rows to return, as an integer. Per ottenere i primi tre prodotti, come ordinato da $SUPPORT, digitare 3.To get the top three products, as ordered by $SUPPORT, you type 3.

Risultati dell'esempio:Example results:

ModelloModel $SUPPORT$SUPPORT $PROBABILITY$PROBABILITY $ADJUSTEDPROBABILITY$ADJUSTEDPROBABILITY
Sport-100Sport-100 43344334 0.29…0.29… 0.25…0.25…
Water BottleWater Bottle 28662866 0.19…0.19… 0.17…0.17…
Patch kitPatch kit 21132113 0.14…0.14… 0.13…0.13…

Tuttavia, questo tipo di query può influire sulle prestazioni nell'impostazione di un ambiente di produzioneHowever, this type of query might affect performance in a production setting. perché restituisce un set di tutte le stime dall'algoritmo, ordina queste stime e restituisce le prime tre.This is because the query returns a set of all predictions from the algorithm, sorts these predictions, and returns the top 3.

Nell'esempio seguente viene fornita un'istruzione alternativa che restituisce gli stessi risultati ma in modo significativamente più veloce.The following example provides an alternative statement that returns the same results but executes significantly faster. In questo esempio sostituisce TopCount con la funzione di stima, che accetta un numero di stime come argomento.This example replaces TopCount with the Predict function, which accepts a number of predictions as an argument. Questo esempio Usa anche il $SUPPORT (parola chiave) per recuperare direttamente la colonna della tabella nidificata.This example also uses the $SUPPORT keyword to directly retrieve the nested table column.

SELECT Predict ([Association].[v Assoc Seq Line Items], INCLUDE_STATISTICS, 3, $SUPPORT)  

I risultati contengono le prime tre stime ordinate in base al valore di supporto.The results contain the top 3 predictions sorted by the support value. È possibile sostituire $SUPPORT con $PROBABILITY o $ADJUSTED_PROBABILITY per restituire stime classificate in base alla probabilità o alla probabilità adattata.You can replace $SUPPORT with $PROBABILITY or $ADJUSTED_PROBABILITY to return predictions ranked by probability or adjusted probability. Per ulteriori informazioni, vedere stima (DMX).For more information, see Predict (DMX).

Vedere ancheSee Also

DMX funzioni ( ) Functions (DMX)
Funzioni di stima generale ( DMX ) General Prediction Functions (DMX)
DMX BottomCount ( ) BottomCount (DMX)
DMX TopPercent ( ) TopPercent (DMX)
DMX TopSum ( )TopSum (DMX)