SELECT DISTINCT FROM <Model > (UNIVERSE)
Gilt für: SQL Server Analysis Services
Gibt alle möglichen Status für die ausgewählte Spalte im Modell zurück. Die zurückgegebenen Werte variieren, je nachdem, ob die angegebene Spalte diskrete Werte, diskretisierte numerische Werte oder fortlaufende numerische Werte enthält.
Syntax
SELECT [FLATTENED] DISTINCT [TOP <n>] <expression list> FROM <model>
[WHERE <condition list>][ORDER BY <expression>]
Argumente
n
Optional. Eine ganze Zahl, die angibt, wie viele Zeilen zurückgegeben werden sollen.
Ausdrucksliste
Eine durch Trennzeichen getrennte Liste mit Bezeichnern verbundener Spalten (abgeleitet aus dem Modell) oder mit Ausdrücken.
Modell
Ein Modellbezeichner.
Bedingungsliste
Eine Bedingung, die die Werte einschränkt, die für die Spaltenliste zurückgegeben werden.
expression
Optional. Ein Ausdruck, der einen Skalarwert zurückgibt.
Hinweise
Die SELECT DISTINCT FROM-Anweisung funktioniert nur mit einer einzelnen Spalte oder mit einer Reihe verwandter Spalten. Für eine Gruppe nicht verbundener Spalten kann diese Klausel nicht verwendet werden.
Mit der SELECT DISTINCT FROM-Anweisung können Sie direkt auf eine Spalte innerhalb einer geschachtelten Tabelle verweisen. Zum Beispiel:
<model>.<table column reference>.<column reference>
Die Ergebnisse der SELECT DISTINCT FROM-Modellausweisung <> variieren je nach Spaltentyp. In der folgenden Tabelle sind die unterstützten Spaltentypen sowie die Ausgabe beschrieben, die von der Anweisung erstellt wird.
Spaltentyp | Output |
---|---|
Discrete | Die eindeutigen Werte in der Spalte. |
Discretized | Der Mittelpunkt für jeden diskretisierten Bucket in der Spalte. |
Fortlaufend | Der Mittelpunkt für die Werte in der Spalte. |
Beispiel zu einer diskreten Spalte
Das folgende Codebeispiel basiert auf dem [TM Decision Tree]
Modell, das Sie im Lernprogramm zum Einfachen Data Mining erstellen. Die Abfrage gibt die eindeutigen Werte zurück, die in der diskreten Spalte Gender
vorhanden sind.
SELECT DISTINCT [Gender]
FROM [TM Decision Tree]
Beispielergebnisse:
Geschlecht |
---|
Fr |
M |
In Spalten, die diskrete Werte enthalten, enthalten die Ergebnisse auch immer den fehlenden Status, der als Nullwert angezeigt wird.
Beispiel für eine kontinuierliche Spalte
Im folgenden Codebeispiel wird das Mittelpunktalter, minimale und maximale Alter für alle Werte in der Spalte zurückgegeben.
SELECT DISTINCT [Age] AS [Midpoint Age],
RangeMin([Age]) AS [Minimum Age],
RangeMax([Age]) AS [Maximum Age]
FROM [TM Decision Tree]
Beispielergebnisse:
Mittelpunktalter | Mindestalter | Maximales Alter |
---|---|---|
62 | 26 | 97 |
Die Abfrage gibt auch eine einzelne Zeile mit Nullwerten zurück, um die fehlenden Werte darzustellen.
Beispiel zu einer diskretisierten Spalte
Im folgenden Codebeispiel werden die Werte für Mittelpunkt, Maximum und Mindestwerte für jeden Bucket zurückgegeben, der vom Algorithmus für die Spalte [Yearly Income]
erstellt wurde. Um die Ergebnisse für dieses Beispiel zu reproduzieren, müssen Sie eine neue Miningstruktur erstellen, die der von [Targeted Mailing]
entspricht. Ändern Sie im Assistenten den Inhaltstyp der Yearly Income
Spalte von "Fortlaufend" in "Diskretized".
Hinweis
Sie können auch das im Basic Mining Tutorial erstellte Miningmodell ändern, um die Miningstrukturspalte zu diskretisieren. [Yearly Income]
Informationen dazu finden Sie unter Ändern der Diskretisierung einer Spalte in einem Miningmodell. Wenn Sie jedoch die Diskretisierung der Spalte ändern, wird die Miningstruktur neu verarbeitet, wodurch die Ergebnisse anderer Modelle, die mithilfe dieser Struktur erstellt wurden, geändert werden.
SELECT DISTINCT [Yearly Income] AS [Bucket Average],
RangeMin([Yearly Income]) AS [Bucket Minimum],
RangeMax([Yearly Income]) AS [Bucket Maximum]
FROM [TM Decision Tree]
Beispielergebnisse:
Bucketdurchschnitt | Bucketminimum | Bucketmaximum |
---|---|---|
24610.7 | 10000 | 39221.41 |
55115.73 | 39221.41 | 71010.05 |
84821.54 | 71010.05 | 98633.04 |
111633.9 | 98633.04 | 124634.7 |
147317.4 | 124634.7 | 170000 |
Sie können sehen, dass die Werte der [Yearly Income]
Spalte in fünf Buckets und eine zusätzliche Zeile mit Nullwerten entschlüsselt wurden, um fehlende Werte darzustellen.
Die Anzahl der Dezimalstellen in den Ergebnissen ist von dem für die Abfrage verwendeten Client abhängig. Hier wurden sie aus Gründen der Einfachheit auf zwei Dezimalstellen gerundet und spiegeln die Werte wider, die in SQL Server Data Tools (SSDT) angezeigt werden.
Wenn Sie das Modell beispielsweise mithilfe des Entscheidungsstruktur-Viewers durchsuchen und auf einen Knoten klicken, der Kunden gruppiert nach Einkommen enthält, werden in der Quickinfo folgende Knoteneigenschaften angezeigt:
Alter >=69 UND Jahreseinkommen < 39221,41
Hinweis
Der Minimalwert des Minimalbuckets und der Maximalwert des Maximalbuckets sind lediglich die höchsten und niedrigsten ermittelten Werte. Von allen Werten, die außerhalb dieses ermittelten Bereichs liegen, wird angenommen, dass sie zu den Minimal- und Maximalbuckets gehören.
Weitere Informationen
SELECT (SELECT)
DATA Mining Extensions (UNIVERSE) Datenmanipulationsanweisungen
Data Mining-Erweiterungen (DMX) - Anweisungsreferenz