SELECT (DMX)

Die SELECT-Anweisung in Data Mining-Erweiterungen (DMX) wird für folgende Aufgaben in Data Mining verwendet:

  • Durchsuchen des Inhalts eines vorhandenen Miningmodells

  • Erstellen von Vorhersagen aus einem vorhandenen Miningmodell

  • Erstellen einer Kopie eines vorhandenen Miningmodells

  • Durchsuchen der Miningstruktur

Obwohl die vollständige Syntax dieser Anweisung komplex ist, können die Hauptklauseln, die für das Durchsuchen eines Modells und der ihm zugrunde liegenden Struktur verwendet werden, wie folgt zusammengefasst werden:

SELECT [FLATTENED] [TOP <n>] <select list>
FROM <model/structure>[.aspect]
[WHERE <condition expression>]
[ORDER BY <expression>[DESC|ASC]]

FLATTENED

Einige Data Mining-Clients unterstützen keine Resultsets in hierarchischem Format von einem Data Mining-Anbieter. Der Client kann möglicherweise keine Hierarchie verwalten oder muss die Ergebnisse in einer einzelnen denormalisierten Tabelle speichern. Sollen die Daten aus geschachtelten Tabellen in vereinfachte Tabellen konvertiert werden, müssen Sie für die Abfrageergebnisse fordern, dass sie vereinfacht werden.

Zum Vereinfachen der Abfrageergebnisse verwenden Sie die SELECT-Syntax mit der Option FLATTENED. Dies ist im folgenden Beispiel gezeigt:

SELECT FLATTENED <select list> FROM ...

TOP &lt;n&gt; und ORDER BY

Sie können die Ergebnisse einer Abfrage ordnen, indem Sie einen Ausdruck verwenden. Anschließend können Sie eine Teilmenge der Ergebnisse zurückgeben, indem Sie eine Kombination aus den Klauseln ORDER BY und TOP verwenden. Dies ist hilfreich für Szenarien wie gezieltes Mailing, in dem Sie Ergebnisse nur an die Personen senden möchten, die am wahrscheinlichsten antworten. Sie könnten die Ergebnisse einer Vorhersageabfrage für gezieltes Mailing nach der Vorhersagewahrscheinlichkeit ordnen und dann nur die ersten <n> Ergebnisse zurückgeben.

Auswahlliste

Der <select list>-Parameter kann Verweise auf eine skalare Spalte, Vorhersagefunktionen und Ausdrücke enthalten. Welche Optionen verfügbar sind, hängt vom Algorithmus und den folgenden Kontexten ab:

  • Wird eine Miningstruktur oder ein Miningmodell abgefragt?

  • Werden Inhalte oder Fälle abgefragt?

  • Handelt es sich bei den Quelldaten um eine relationale Tabelle oder um einen Cube?

  • Werden Vorhersagen getroffen?

In vielen Fällen können Sie Aliasse verwenden, oder Sie erstellen einfache Ausdrücke basierend auf den Elementen in der Auswahlliste. Das folgende Beispiel zeigt einen einfachen Ausdruck in Modellspalten:

SELECT [CustomerID], [Last Name] + ', ' + [FirstName] AS FullName
FROM <model>.CASES

Im folgenden Beispiel wird ein Alias für eine Spalte erstellt, die die Ergebnisse einer Vorhersagefunktion enthält:

SELECT Predict([Column1], 'Value') as Column1Prediction
FROM MyModel
JOIN <source data query>

WHERE

Sie können die von der Abfrage zurückgegebenen Fälle beschränken, indem Sie eine WHERE-Klausel verwenden. Die WHERE-Klausel gibt an, dass Spaltenverweise im WHERE-Ausdruck die gleiche Semantik haben müssen wie Spaltenverweise im <select list>-Parameter der SELECT-Anweisung und nur einen booleschen Ausdruck zurückgeben können. Die WHERE-Klausel hat folgende Syntax:

WHERE < condition expression >

Für die Auswahlliste und die WHERE-Klausel einer SELECT-Anweisung müssen die folgenden Regeln beachtet werden:

  • Die Auswahlliste muss einen Ausdruck enthalten, der kein boolesches Ergebnis zurückgibt. Sie können den Ausdruck ändern, aber der Ausdruck muss nicht boolesche Ergebnisse zurückgeben.

  • Die WHERE-Klausel muss einen Ausdruck enthalten, der ein boolesches Ergebnis zurückgibt. Sie können die Klausel ändern, aber sie muss ein boolesches Ergebnis zurückgeben.

Vorhersagen (Predictions)

Für das Erstellen von Vorhersagen gibt es zwei Syntaxformen:

Mit der ersten Form für Vorhersagen können Sie komplexe Vorhersagen in Echtzeit oder als Batch erstellen.

Die zweite Vorhersageform erstellt eine leere Vorhersageverknüpfung (prediction join) für eine vorhersagbare Spalte in einem Miningmodell und gibt den wahrscheinlichsten Status der Spalte zurück. Die Ergebnisse einer solchen Abfrage basieren vollständig auf dem Inhalt des Miningmodells.

Sie können eine SELECT-Anweisung in die Quellabfrage einer SELECT FROM PREDICTION JOIN-Anweisung einfügen, indem Sie folgende Syntax verwenden.

SELECT FROM PREDICTION JOIN (<SELECT statement>) AS t, WHERE <SELECT statement>

Weitere Informationen zum Erstellen von Vorhersageabfragen finden Sie unter Vorhersageabfragen (DMX).

Klauselsyntax

Da die SELECT-Anweisung relativ komplex ist, werden detaillierte Syntaxelemente und Argumente zusammen mit den einzelnen Klauseln beschrieben. Weitere Informationen zu den einzelnen Klauseln erhalten Sie, wenn Sie auf ein Thema in der folgenden Liste klicken:

SELECT DISTINCT FROM <Modell> (DMX)

SELECT FROM <model>.CONTENT (DMX)

SELECT FROM <model>.CASES (DMX)

SELECT FROM <model>.SAMPLE_CASES (DMX)

SELECT FROM <model>.DIMENSION_CONTENT (DMX)

SELECT FROM <model> PREDICTION JOIN (DMX)

SELECT FROM <model> (DMX)

SELECT FROM <structure>.CASES