INSERT INTO (DMX)

Verarbeitet das angegebene Data Mining-Objekt. Weitere Informationen zum Verarbeiten von Miningmodellen und Miningstrukturen finden Sie unter Anforderungen und Überlegungen zur Verarbeitung (Data Mining).

Wenn eine Miningstruktur angegeben ist, verarbeitet die Anweisung die Miningstruktur sowie alle Miningmodelle, die der Struktur zugeordnet sind. Ist ein Miningmodell angegeben, verarbeitet die Anweisung nur das Miningmodell.

Syntax

INSERT INTO [MINING MODEL]|[MINING STRUCTURE] <model>|<structure> (<mapped model columns>) <source data query>
INSERT INTO [MINING MODEL]|[MINING STRUCTURE] <model>|<structure>.COLUMN_VALUES (<mapped model columns>) <source data query>

Argumente

  • model
    Ein Modellbezeichner.

  • structure
    Ein Strukturbezeichner.

  • mapped model columns
    Eine durch Trennzeichen getrennte Liste mit Spaltenbezeichnern und geschachtelten Bezeichnern.

  • source data query
    Die Quellabfrage im anbieterdefinierten Format.

Hinweise

Wenn Sie MINING MODEL oder MINING STRUCTURE nicht angegeben haben, sucht Analysis Services anhand des Namens nach dem Objekttyp und verarbeitet das richtige Objekt. Wenn der Server eine Miningstruktur und ein Miningmodell enthält, die denselben Namen haben, wird ein Fehler zurückgegeben.

Durch das Verwenden des zweiten Syntaxformulars, INSERT INTO <object>.COLUMN_VALUES, können Sie Daten direkt in die Modellspalten einfügen, ohne das Modell zu trainieren. Bei dieser Methode werden dem Modell Spaltendaten in einer übersichtlichen, geordneten Weise bereitgestellt, die sich anbietet, wenn Sie mit Datasets arbeiten, die Hierarchien oder geordnete Spalten enthalten.

Wenn Sie INSERT INTO mit einem Miningmodell oder einer Miningstruktur verwenden und die Argumente für die <zugeordneten Modellspalten> und <Quelldatenabfrage> auslassen, verhält sich die Anweisung wie ProcessDefault und verwendet Bindungen, die bereits vorhanden sind. Wenn keine Bindungen vorhanden sind, gibt die Anweisung einen Fehler zurück. Weitere Informationen zu ProcessDefault finden Sie unter Verarbeiten von Optionen und Einstellungen (Analysis Services). Das folgende Beispiel zeigt die Syntax:

INSERT INTO [MINING MODEL] <model>

Wenn Sie MINING MODEL angeben und zugeordnete Spalten sowie eine Quelldatenabfrage bereitstellen, werden das Modell und die zugeordnete Struktur verarbeitet.

In der folgenden Tabelle sind die vom Status der Objekte abhängigen Ergebnisse der unterschiedlichen Formen der Anweisung beschrieben.

Anweisung

Status der Objekte

Ergebnis

INSERT INTO MINING MODEL <model>

Miningstruktur wird verarbeitet.

Miningmodell wird verarbeitet.

   

Miningstruktur wird nicht verarbeitet.

Miningmodell und Miningstruktur werden verarbeitet.

   

Miningstruktur enthält weitere Miningmodelle.

Fehler bei der Verarbeitung. Sie müssen die Struktur und die zugeordneten Miningmodelle erneut verarbeiten.

INSERT INTO MINING STRUCTURE <structure>

Miningstruktur wird verarbeitet oder nicht verarbeitet.

Miningstruktur und zugeordnete Miningmodelle werden verarbeitet.

INSERT INTO MINING MODEL <model> (beinhaltet eine Quellabfrage)

- oder -

INSERT INTO MINING STRUCTURE <structure> (beinhaltet eine Quellabfrage)

Entweder die Struktur oder das Modell enthält bereits Inhalt.

Fehler bei der Verarbeitung. Sie können diesen Vorgang erst ausführen, nachdem Sie die Objekte mit DELETE (DMX) gelöscht haben.

Zugeordnete Modellspalten (Mapped Model Columns)

Unter Verwendung des Elements für <zugeordnete Modellspalten> können Sie die Spalten der Datenquelle den Spalten in Ihrem Miningmodell zuordnen. Das Element für <zugeordnete Modellspalten> weist folgendes Formular auf:

<column identifier> | SKIP | <table identifier> (<column identifier> | SKIP), ...

Mithilfe von SKIP können Sie bestimmte Spalten ausschließen, die in der Quellabfrage vorhanden sein müssen, im Miningmodell aber nicht vorhanden sind. SKIP ist hilfreich, wenn Sie keine Kontrolle über die Spalten haben, die in einem Eingaberowset enthalten sind. Wenn Sie Ihre eigene OPENQUERY schreiben, wird anstelle der Verwendung von SKIP empfohlen, die Spalte in der SELECT-Spaltenliste auszulassen.

SKIP ist auch nützlich, wenn eine Spalte aus dem Eingaberowset benötigt wird, um einen Join durchzuführen, die Spalte jedoch nicht von der Miningstruktur verwendet wird. Ein typisches Beispiel dafür sind eine Miningstruktur und ein Miningmodell, die eine geschachtelte Tabelle enthalten. Das Eingaberowset für diese Struktur umfasst eine Fremdschlüsselspalte, mit der ein hierarchisches Rowset mithilfe der SHAPE-Klausel erstellt wird. Die Fremdschlüsselspalte wird jedoch kaum im Modell verwendet.

Die Syntax für SKIP erfordert, dass Sie SKIP an der Position der einzelnen Spalte im Eingaberowset einfügen, das über keine entsprechende Miningstrukturspalte verfügt. Im nachfolgenden Beispiel der geschachtelten Tabelle muss OrderNumber in der APPEND-Klausel ausgewählt werden, sodass sie in der RELATE-Klausel zum Angeben des Joins verwendet werden kann. Dabei möchten Sie jedoch nicht die OrderNumber-Daten in die geschachtelte Tabelle in der Miningstruktur einfügen. Daher wird im Beispiel das SKIP-Schlüsselwort anstelle von OrderNumber im INSERT INTO-Argument verwendet.

Quelldatenabfrage (Source Data Query)

Das <source data query>-Element kann die folgenden Datenquellentypen enthalten:

  • OPENQUERY

  • OPENROWSET

  • SHAPE

  • Jede Analysis Services-Abfrage, die ein Rowset zurückgibt

Weitere Informationen zu Datenquellentypen finden Sie unter <source data query>.

Elementares Beispiel

Im folgenden Beispiel wird OPENQUERY verwendet, um auf Grundlage der Targeted Mailing-Daten in der AdventureWorksDW2012 -Datenbank ein Naive Bayes-Modell zu trainieren.

INSERT INTO NBSample (CustomerKey, Gender, [Number Cars Owned],
    [Bike Buyer])
OPENQUERY([AdventureWorksDW2012],'Select CustomerKey, Gender, [NumberCarsOwned], [BikeBuyer] 
FROM [vTargetMail]')

Beispiel für eine geschachtelte Tabelle

Im folgenden Beispiel wird SHAPE dazu verwendet, ein Zuordnungsminingmodell zu trainieren, das eine geschachtelte Tabelle enthält. Beachten Sie, dass die erste Zeile SKIP anstelle von OrderNumber enthält, was in der SHAPE_APPEND-Anweisung erforderlich ist, im Miningmodell jedoch nicht verwendet wird.

INSERT INTO MyAssociationModel
    ([OrderNumber],[Models] (SKIP, [Model])
    )
SHAPE {
    OPENQUERY([AdventureWorksDW2012],'SELECT OrderNumber
    FROM vAssocSeqOrders ORDER BY OrderNumber')
} APPEND (
    {OPENQUERY([AdventureWorksDW2012],'SELECT OrderNumber, model FROM 
    dbo.vAssocSeqLineItems ORDER BY OrderNumber, Model')}
  RELATE OrderNumber to OrderNumber) 
AS [Models]

Siehe auch

Verweis

Data Mining-Erweiterungen (DMX) - Datendefinitionsanweisungen

Data Mining-Erweiterungen (DMX) - Datenbearbeitungsanweisungen

Data Mining-Erweiterungen (DMX) - Anweisungsreferenz