TopPercent (DMX)
Gilt für: SQL Server Analysis Services
Die Funktion "TopPercent " gibt die obersten Zeilen einer Tabelle zurück, deren kumulierte Summe mindestens ein angegebener Prozentsatz ist, um die Rangfolge zu verringern.
Syntax
TopPercent(<table expression>, <rank expression>, <percent>)
Gilt für
Ein Ausdruck, der eine Tabelle zurückgibt, z. B. einen <Tabellenspaltenverweis> oder eine Funktion, die eine Tabelle zurückgibt.
Rückgabetyp
<Tabellenausdruck>
Hinweise
Die Funktion "TopPercent " gibt die obersten Zeilen in abnehmender Reihenfolge des Rangs basierend auf dem ausgewerteten Wert des <Bewertungsausdruckarguments> für jede Zeile zurück, sodass die Summe der <Rangausdruckswerte> mindestens den angegebenen Prozentsatz aufweist, der durch das <Argument "Prozent> " angegeben wird. TopPercent gibt die kleinste Anzahl möglicher Elemente zurück, während der angegebene Prozentwert noch erfüllt ist.
Beispiele
Im folgenden Beispiel wird eine Vorhersageabfrage für das Zuordnungsmodell erstellt, das Sie mithilfe des Lernprogramms zum Einfachen Data Mining erstellen.
Um zu verstehen, wie TopPercent funktioniert, kann es hilfreich sein, zuerst eine Vorhersageabfrage auszuführen, die nur die geschachtelte Tabelle zurückgibt.
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
Hinweis
In diesem Beispiel enthält der als Eingabe bereitgestellte Wert ein einzelnes Anführungszeichen und muss daher mit Escapezeichen versehen werden, indem ihm ein weiteres einzelnes Anführungszeichen vorangestellt wird. Wenn Sie über die Syntax zum Einfügen von Escapezeichen nicht sicher sind, können Sie den Generator für Vorhersageabfragen verwenden, um die Abfrage zu erstellen. Wenn Sie den Wert aus der Dropdownliste auswählen, wird das erforderliche Escapezeichen automatisch eingefügt. Weitere Informationen finden Sie unter Erstellen einer Singleton-Abfrage im Data Mining-Designer.
Beispielergebnisse:
Modell | $SUPPORT | $PROBABILITY | $ADJUSTEDPROBABILITY |
---|---|---|---|
Sport-100 | 4334 | 0.291283016 | 0.252695851 |
Water Bottle | 2866 | 0.192620472 | 0.175205052 |
Patchkit | 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 |
Die Funktion "TopPercent" verwendet die Ergebnisse dieser Abfrage und gibt die Zeilen mit den größten Werten zurück, die zum angegebenen Prozentsatz addiert werden.
SELECT
TopPercent
(
Predict ([Association].[v Assoc Seq Line Items],INCLUDE_STATISTICS,10),
$SUPPORT,
50)
FROM
[Association]
NATURAL PREDICTION JOIN
(SELECT (SELECT 'Women''s Mountain Shorts' as [Model]) AS [v Assoc Seq Line Items]) AS t
Das erste Argument für die Funktion "TopPercent" ist der Name einer Tabellenspalte. In diesem Beispiel wird die geschachtelte Tabelle zurückgegeben, indem die Vorhersage-Funktion aufgerufen und das argument INCLUDE_STATISTICS verwendet wird.
Das zweite Argument für die Funktion "TopPercent" ist die Spalte in der geschachtelten Tabelle, die Sie zum Sortieren der Ergebnisse verwenden. In diesem Beispiel gibt die INCLUDE_STATISTICS-Option die Spalten $SUPPORT, $PROBABILTY und $ADJUSTED PROBABILITY zurück. In diesem Beispiel wird $SUPPORT verwendet, da diese Werte keine Bruchteile besitzen und daher leichter zu überprüfen sind.
Das dritte Argument der Funktion "TopPercent" gibt den Prozentsatz als Double an. Geben Sie 50 ein, um die Zeilen für die obersten Produkte zu erhalten, die 50 Prozent der Gesamtunterstützung ergeben.
Beispielergebnisse:
Modell | $SUPPORT | $PROBABILITY | $ADJUSTEDPROBABILITY |
---|---|---|---|
Sport-100 | 4334 | 0.29... | 0.25... |
Water Bottle | 2866 | 0.19... | 0.17... |
Patchkit | 2113 | 0.14... | 0.13... |
Mountain Tire Tube | 1992 | 0.133... | 0.12... |
Hinweis Dieses Beispiel wird nur zur Veranschaulichung der Verwendung von TopPercent bereitgestellt. Je nach Größe des Datasets kann die Ausführung dieser Abfrage lange dauern.
Warnung
Die MDX-Funktionen für TOPPERCENT und BOTTOMPERCENT können unerwartete Ergebnisse generieren, wenn die Werte zur Berechnung des Prozentsatzes negative Zahlen enthalten. Dieses Verhalten wirkt sich nicht auf die DMX-Funktionen aus. Weitere Informationen finden Sie unter BottomPercent (MDX).For more information, see BottomPercent (MDX).
Weitere Informationen
Data Mining Extensions (EXTENSION) Funktionsreferenz
Functions (DMX) (Funktionen (DMX))
General Prediction Functions (DMX) (Allgemeine Vorhersagefunktionen (DMX))