Freigeben über


SELECT DISTINCT FROM <Model> (DMX)

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.

  • expression list
    Eine durch Trennzeichen getrennte Liste mit Bezeichnern verbundener Spalten (abgeleitet aus dem Modell) oder mit Ausdrücken.

  • model
    Ein Modellbezeichner.

  • condition list
    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 kann nur für eine einzelne Spalte oder eine Gruppe verbundener Spalten verwendet werden. Für eine Gruppe nicht verbundener Spalten kann diese Klausel nicht verwendet werden.

In der SELECT DISTINCT FROM-Anweisung können Sie direkt auf eine Spalte in einer geschachtelten Tabelle verweisen. Beispiel:

<model>.<table column reference>.<column reference>

Die Ergebnisse der SELECT DISTINCT FROM <model>-Anweisung sind je nach Spaltentyp unterschiedlich. In der folgenden Tabelle sind die unterstützten Spaltentypen sowie die Ausgabe beschrieben, die von der Anweisung erstellt wird.

Spaltentyp

Ausgabe

Diskret

Die eindeutigen Werte in der Spalte.

Diskretisiert

Der Mittelpunkt für jeden diskretisierten Bucket in der Spalte.

Kontinuierlich

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 zu Data Mining-Grundlagen 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

  

W

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 der Mittelpunkt sowie der maximale und minimale Wert für jeden Bucket zurückgegeben, der von dem 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 Continuous zu Discretized.

HinweisHinweis

Sie können das im Lernprogramm zu Data Mining-Grundlagen erstellte Miningmodell auch so ändern, dass die Miningstrukturspalte [Yearly Income] diskretisiert wird. Weitere Informationen hierzu finden Sie unter Ändern der Diskretisierung von Spalten in Miningmodellen. 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 feststellen, dass die Werte der Spalte [Yearly Income] in fünf Buckets diskretisiert wurden, zuzüglich einer weiteren Zeile von Nullwerten, die fehlende Daten darstellen.

Die Anzahl der Dezimalstellen in den Ergebnissen ist von dem für die Abfrage verwendeten Client abhängig. Hier wurde zur Vereinfachung und zur Wiedergabe der in SQL Server-Datentools (SSDT) angezeigten Werte auf zwei Dezimalstellen gerundet.

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:

Age >=69 AND Yearly Income < 39221.41

HinweisHinweis

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.

Siehe auch

Verweis

SELECT (DMX)

Data Mining-Erweiterungen (DMX) - Datenbearbeitungsanweisungen

Data Mining-Erweiterungen (DMX) - Anweisungsreferenz