Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: usług SQL Server Analysis Services
Zwraca określoną liczbę najbardziej górnych wierszy w kolejności malejącej rangi określonej przez wyrażenie.
Syntax
TopCount(<table expression>, <rank expression>, <count>)
Ma zastosowanie do
Wyrażenie zwracające tabelę, na przykład referencję> kolumny <tabeli lub funkcję zwracającą tabelę.
Zwracany typ
<Wyrażenie tabelowe>
Remarks
Wartość podany <przez argument wyrażenia> rangi określa malejącą kolejność rzędu wierszy podanych w argumentze <wyrażenia> tabelowego, a liczba najbardziej górnych wierszy podana w argumentze <liczenia> jest zwracana.
Funkcja TopCount została pierwotnie wprowadzona, aby umożliwić przewidywania asocjacyjne i generalnie daje te same wyniki co instrukcje zawierające klauzule SELECT TOP i ORDER BY . Uzyskasz lepszą wydajność dla predykcji asocjacyjnych, używając funkcji Predict (DMX), która umożliwia określenie określonej liczby przewidywań do zwrotu.
Jednak zdarzają się sytuacje, gdy nadal możesz potrzebować TopCount. Na przykład DMX nie obsługuje kwalifikatora TOP w instrukcji sub-select. Funkcja PredictHistogram (DMX) również nie obsługuje dodawania TOP.
Examples
Poniższe przykłady to zapytania predykcyjne względem modelu Asocjacji, które budujesz, korzystając z Podstawowego Samouczka Eksploracji Danych. Zapytania zwracają te same wyniki, ale pierwszy przykład używa TopCount, a drugi przykład używa funkcji Predict.
Aby zrozumieć, jak działa TopCount, może być pomocne najpierw wykonanie zapytania predykcyjnego, które zwraca tylko zagnieżdżoną tabelę.
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
W tym przykładzie wartość podana jako wejście zawiera pojedynczy cudzysłów, dlatego musi być omijana, poprzedzając go kolejnym cudzysłowem. Jeśli nie jesteś pewien składni wstawiania znaku ucieczki, możesz użyć Prediction Query Builder, aby utworzyć zapytanie. Gdy wybierzesz wartość z listy rozwijanej, wstawia się wymagany znak ucieczki. Więcej informacji można znaleźć w artykule Utwórz zapytanie Singleton w Data Mining Designer.
Przykładowe wyniki:
| Wzór | $SUPPORT | $PROBABILITY | $ADJUSTEDPROBABILITY |
|---|---|---|---|
| Sport-100 | 4334 | 0.291283016 | 0.252695851 |
| Butelka wody | 2866 | 0.192620472 | 0.175205052 |
| Zestaw poprawek | 2113 | 0.142012232 | 0.132389356 |
| Rura opon górskich | 1992 | 0.133879965 | 0.125304948 |
| Mountain-200 | 1755 | 0.117951475 | 0.111260823 |
| Rura opon drogowych | 1588 | 0.106727603 | 0.101229538 |
| Czapka rowerowa | 1473 | 0.098998589 | 0.094256014 |
| Zestaw Fender - Góra | 1415 | 0.095100477 | 0.090718432 |
| Koszyk na bidon do roweru górskiego | 1367 | 0.091874454 | 0.087780332 |
| Klatka na butelki drogowe | 1195 | 0.080314537 | 0.077173962 |
Funkcja TopCount przyjmuje wyniki tego zapytania i zwraca określoną liczbę najmniejszych wierszy.
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
Pierwszym argumentem dla funkcji TopCount jest nazwa kolumny tabeli. W tym przykładzie zagnieżdżona tabela jest zwracana przez wywołanie funkcji Predict i użycie argumentu INCLUDE_STATISTICS.
Drugim argumentem dla funkcji TopCount jest kolumna w zagnieżdżonej tabeli, której używasz do uporządkowania wyników. W tym przykładzie opcja INCLUDE_STATISTICS zwraca kolumny $SUPPORT, $PROBABILITY i $ADJUSTED PROBABILITY. Ten przykład wykorzystuje $SUPPORT do szeregowania wyników.
Trzeci argument do funkcji TopCount określa liczbę wierszy do zwrócenia jako liczbę całkowitą. Aby zobaczyć trzy najlepsze produkty, zamówione przez $SUPPORT, wpisujesz 3.
Przykładowe wyniki:
| Wzór | $SUPPORT | $PROBABILITY | $ADJUSTEDPROBABILITY |
|---|---|---|---|
| Sport-100 | 4334 | 0.29... | 0.25... |
| Butelka wody | 2866 | 0.19... | 0.17... |
| Zestaw poprawek | 2113 | 0.14... | 0.13... |
Jednak tego typu zapytania mogą wpływać na wydajność w środowisku produkcyjnym. Wynika to z faktu, że zapytanie zwraca zestaw wszystkich prognoz z algorytmu, sortuje te prognozy i zwraca trzy najlepsze.
Poniższy przykład przedstawia alternatywne zdanie, które zwraca te same wyniki, ale wykonuje się znacznie szybciej. Ten przykład zastępuje TopCount funkcją Predict, która akceptuje wiele przewidywań jako argument. Ten przykład wykorzystuje również słowo kluczowe $SUPPORT do bezpośredniego pobrania zagnieżdżonej kolumny tabeli.
SELECT Predict ([Association].[v Assoc Seq Line Items], INCLUDE_STATISTICS, 3, $SUPPORT)
Wyniki zawierają trzy najlepsze prognozy posortowane według wartości wsparcia. Możesz zastąpić $SUPPORT $PROBABILITY lub $ADJUSTED_PROBABILITY, aby zwrócić prognozy uszeregowane według prawdopodobieństwa lub skorygowanego prawdopodobieństwa. Aby uzyskać więcej informacji, zobacz Przewidywanie (DMX).