TopSum (DMX)
S’applique à SQL Server Analysis Services
Retourne, dans l'ordre décroissant, les lignes supérieures d'une table dont le total cumulé est au moins égal à la valeur spécifiée.
Syntaxe
TopSum(<table expression>, <rank expression>, <sum>)
S'applique à
Expression qui retourne une table, telle qu’une <référence> de colonne de table ou une fonction qui retourne une table.
Type renvoyé
<expression de table>
Notes
La fonction TopSum retourne les lignes les plus élevées dans l’ordre décroissant du classement en fonction de la valeur évaluée de l’argument <d’expression> de classement pour chaque ligne, de sorte que la somme des valeurs d’expression> de <classement est au moins le total donné spécifié par l’argument <somme>. TopSum retourne le plus petit nombre d’éléments possible tout en répondant à la valeur de somme spécifiée.
Exemples
L’exemple suivant crée une requête de prédiction sur le modèle Association que vous générez à l’aide du didacticiel d’exploration de données de base.
Pour comprendre le fonctionnement de TopPercent, il peut être utile d’exécuter d’abord une requête de prédiction qui retourne uniquement la table imbriquée.
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
Remarque
Dans cet exemple, la valeur fournie en tant qu'entrée contient un guillemet simple et doit donc être placée dans une séquence d'échappement en la préfaçant avec un autre guillemet simple. Si vous n'êtes pas certain de la syntaxe permettant d'insérer un caractère d'échappement, vous pouvez utiliser le Générateur de requêtes de prédiction pour créer la requête. Lorsque vous sélectionnez la valeur dans la liste déroulante, le caractère d'échappement requis est inséré pour vous. Pour plus d’informations, consultez Créer une requête Singleton dans le Concepteur d’exploration de données.
Résultats de l'exemple :
Modèle | $SUPPORT | $PROBABILITY | $ADJUSTEDPROBABILITY |
---|---|---|---|
Sport-100 | 4,334 | 0.291283016 | 0.252695851 |
Water Bottle | 2,866 | 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 | 1,195 | 0.080314537 | 0.077173962 |
La fonction TopSum prend les résultats de cette requête et retourne les lignes avec les valeurs les plus élevées qui correspondent au nombre spécifié.
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
Le premier argument de la fonction TopSum est le nom d’une colonne de table. Dans cet exemple, la table imbriquée est retournée en appelant la fonction Predict et en utilisant l’argument INCLUDE_STATISTICS.
Le deuxième argument de la fonction TopSum est la colonne de la table imbriquée que vous utilisez pour classer les résultats. Dans cet exemple, l'option INCLUDE_STATISTICS retourne les colonnes $SUPPORT, $PROBABILTY et $ADJUSTED PROBABILITY. Cet exemple utilise $PROBABILITY pour retourner les lignes dont la somme est au moins égale à une probabilité de 50 %.
Le troisième argument de la fonction TopSum spécifie la somme cible, sous la forme d’un double. Pour obtenir les lignes des produits principaux dont la somme est égale à une probabilité de 50 pour cent, tapez .5.
Résultats de l'exemple :
Modèle | $SUPPORT | $PROBABILITY | $ADJUSTEDPROBABILITY |
---|---|---|---|
Sport-100 | 4,334 | 0.29... | 0.25... |
Water Bottle | 2,866 | 0.19... | 0.17... |
Patch kit | 2113 | 0.14... | 0.13... |
Notez que cet exemple est fourni uniquement pour illustrer l’utilisation de TopSum. L'exécution de cette requête peut prendre beaucoup de temps, en fonction de la taille de votre jeu de données.
Voir aussi
Fonctions (DMX)
Fonctions de prédiction générales (DMX)
TopPercent (DMX)