INSERT INTO (DMX)

Si applica a: sì SQL Server Analysis Services

Consente di elaborare l'oggetto di data mining specificato. Per altre informazioni sull'elaborazione di modelli di data mining e strutture di data mining, vedere Requisiti e considerazioni sull'elaborazione (data mining).

Se è specificata una struttura di data mining, l'istruzione elabora la struttura e tutti i modelli di data mining associati. Se è specificato un modello di data mining, l'istruzione elabora solo tale modello.

Sintassi

  
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>  

Argomenti

model
Identificatore del modello.

structure
Identificatore della struttura.

colonne del modello mappato
Elenco delimitato da virgole contenente identificatori di colonna e identificatori nidificati.

query di dati di origine
Query di origine nel formato definito dal provider.

Commenti

Se non si specifica MINING MODEL o MINING STRUCTURE, cerca il tipo di oggetto in base al nome ed Analysis Services elabora l'oggetto corretto. Se il server contiene una struttura di data mining e un modello di data mining con lo stesso nome, verrà restituito un errore.

Utilizzando il secondo formato di sintassi, INSERT INTO <object> . COLUMN_VALUES, è possibile inserire i dati direttamente nelle colonne del modello senza eseguire il training del modello. Questo metodo consente di fornire dati di colonna al modello in un modo ordinato e conciso, che risulta utile quando si utilizzano set di dati che contengono gerarchie o colonne ordinate.

Se si usa INSERT INTO con un modello di data mining o una struttura di data mining e si oscindono gli argomenti e , l'istruzione si comporta come <mapped model columns> <source data query> ProcessDefault, usando associazioni già esistenti. Se le associazioni non esistono, l'istruzione restituirà un errore. Per altre informazioni su ProcessDefault, vedere Opzioni di elaborazione e Impostazioni (Analysis Services). La sintassi è illustrata nell'esempio seguente:

INSERT INTO [MINING MODEL] <model>  

Se si specifica MINING MODEL e si forniscono colonne mappate e una query di dati di origine, il modello e la struttura associata vengono elaborati.

Nella tabella seguente sono descritti i risultati delle diverse forme dell'istruzione, a seconda dello stato degli oggetti.

Istruzione Stato degli oggetti Risultato
INSERIMENTO NEL MODELLO DI DATA MINING <model> La struttura di data mining viene elaborata. Il modello di data mining viene elaborato.
La struttura di data mining non è elaborata. Vengono elaborati il modello e la struttura di data mining.
La struttura di data mining contiene modelli di data mining aggiuntivi. L'elaborazione non riesce. È necessario rielaborare la struttura e i modelli di data mining associati.
INSERIMENTO NELLA STRUTTURA DI DATA MINING <structure> La struttura di data mining viene elaborata o non elaborata. La struttura di data mining e i modelli di data mining associati vengono elaborati.
INSERT INTO MINING MODEL <model> che contiene una query di origine

oppure

INSERT INTO MINING STRUCTURE <structure> che contiene una query di origine
La struttura o il modello include già un contenuto. L'elaborazione non riesce. È necessario cancellare gli oggetti prima di eseguire questa operazione, usando DELETE (DMX).

Elemento mapped model columns

Usando l'elemento , è possibile eseguire il mapping delle <mapped model columns> colonne dell'origine dati alle colonne del modello di data mining. <mapped model columns>L'elemento ha il formato seguente:

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

Tramite SKIP è possibile escludere determinate colonne che devono esistere nella query di origine, ma che non esistono nel modello di data mining. SKIP è utile quando non si dispone del controllo sulle colonne incluse nel set di righe di input. Se si scrive una propria funzione OPENQUERY, si consiglia di omettere la colonna dall'elenco di colonne SELECT anziché utilizzare SKIP.

SKIP è utile anche quando una colonna del set di righe di input è necessaria per eseguire un join, ma la colonna non è utilizzata dalla struttura di data mining. Un esempio tipico è rappresentato da una struttura di data mining e un modello di data mining che contengono una tabella nidificata. Il set di righe di input per questa struttura avrà una colonna di chiave esterna che viene utilizzata per creare un set di righe gerarchico utilizzando la clausola SHAPE, ma la colonna di chiave esterna non è quasi mai utilizzata nel modello.

La sintassi di SKIP richiede che SKIP venga inserito nella posizione della colonna singola nel set di righe di input che non dispone di una colonna della struttura di data mining corrispondente. Ad esempio, nella seguente tabella nidificata, OrderNumber deve essere selezionato nella clausola APPEND in modo da poter essere utilizzato nella clausola RELATE per specificare il join. Tuttavia, non si desidera inserire i dati di OrderNumber nella tabella nidificata nella struttura di data mining. Nell'esempio è utilizzata pertanto la parola chiave SKIP anziché OrderNumber nell'argomento INSERT INTO.

Elemento <source data query>

<source data query>L'elemento può includere i tipi di origine dati seguenti:

  • OPENQUERY

  • OPENROWSET

  • FORMA

  • Qualsiasi query di Analysis Services che restituisce un set di righe.

Per altre informazioni sui tipi di origine dati, vedere< query sui dati di origine>.

Esempio di base

L'esempio seguente usa OPENQUERY per eseguire il training di un modello Naive Bayes in base ai dati di mailing di destinazione nel AdventureWorksDW2012 database .

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

Esempio con tabella nidificata

Nell'esempio seguente viene utilizzato SHAPE per eseguire il training di un modello di data mining di associazione contenente una tabella nidificata. Si noti che la riga contiene SKIP anziché OrderNumber, che è necessario nell'istruzione SHAPE_APPEND ma non viene utilizzata nel modello di data mining.

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]  

Vedere anche

Estensioni di data mining (DMX) istruzioni di definizione dei dati
Estensioni di data mining (DMX) di manipolazione dei dati
Guida di riferimento alle istruzioni DMX (Data Mining Extensions)