Compartir a través de


INSERT INTO (DMX)

Se aplica a: SQL Server Analysis Services

Procesa el objeto de minería de datos especificado. Para obtener más información sobre el procesamiento de modelos de minería de datos y estructuras de minería de datos, vea Requisitos y consideraciones de procesamiento (minería de datos).

Si se especifica una estructura de minería de datos, la instrucción procesa la estructura de minería de datos y todos sus modelos de minería de datos asociados. Si se especifica un modelo de minería de datos, la instrucción procesa solamente el modelo de minería de datos.

Sintaxis

  
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>  

Argumentos

model
Identificador de modelo.

estructura
Identificador de estructura.

columnas de modelo asignadas
Lista delimitada por comas de identificadores de columna e identificadores anidados.

consulta de datos de origen
Consulta de origen en el formato definido por el proveedor.

Comentarios

Si no especifica MINING MODEL o MINING STRUCTURE, Analysis Services busca el tipo de objeto basado en el nombre y procesa el objeto correcto. Si el servidor contiene una estructura y un modelo de minería de datos con el mismo nombre, se devuelve un error.

Mediante el segundo formulario de sintaxis, INSERT INTO*<object>*. COLUMN_VALUES, puede insertar datos directamente en las columnas del modelo sin entrenar el modelo. Este método proporciona datos de columna al modelo de forma concisa y ordenada que resultan útiles a la hora de trabajar con conjuntos de datos que contienen jerarquías o columnas ordenadas.

Si usa INSERT INTO con un modelo de minería de datos o una estructura de minería de datos, y deja las <columnas del modelo asignadas> y <los argumentos de consulta> de datos de origen, la instrucción se comporta como ProcessDefault, mediante enlaces que ya existen. La instrucción devuelve un error cuando no existen enlaces. Para obtener más información sobre ProcessDefault, vea Opciones de procesamiento y configuración (Analysis Services) . En el siguiente ejemplo se muestra la sintaxis:

INSERT INTO [MINING MODEL] <model>  

Si especifica MINING MODEL y proporciona columnas asignadas y una consulta de datos de origen, se procesa el modelo y la estructura asociada.

La siguiente tabla ofrece una descripción del resultado de distintas formas de la instrucción, en función del estado de los objetos.

Instrucción Estado de los objetos Resultado
INSERT INTO MINING MODEL*<model>* La estructura de minería de datos está procesada. Se procesa el modelo de minería de datos.
La estructura de minería de datos no está procesada. Se procesan el modelo y la estructura de minería de datos.
La estructura de minería de datos contiene modelos de minería de datos adicionales. Se produce un error en el proceso. Deberá volver a procesar la estructura y los modelos de minería de datos asociados.
INSERT INTO MINING STRUCTURE*<structure>* La estructura de minería de datos está procesada o sin procesar. Se procesan la estructura de minería de datos y los modelos de minería de datos asociados.
INSERT INTO MINING MODEL*<model>* que contiene una consulta de origen

o

INSERT INTO MINING STRUCTURE*<structure>* que contiene una consulta de origen
La estructura o el modelo ya tienen contenido. Se produce un error en el proceso. Debe borrar los objetos antes de realizar esta operación mediante DELETE (DMX).

Columnas de modelo asignadas

Mediante el <elemento columnas> del modelo asignado, puede asignar las columnas del origen de datos a las columnas del modelo de minería de datos. El <elemento columnas> del modelo asignado tiene la siguiente forma:

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

Mediante SKIP, puede excluir determinadas columnas que deben existir en la consulta de origen, pero que no existen en el modelo de minería de datos. SKIP es útil cuando no se tiene el control sobre las columnas que se incluyen en el conjunto de filas de entrada. Si está escribiendo su propia instrucción OPENQUERY, lo mejor es omitir la columna en la lista de columnas SELECT en lugar de usar SKIP.

SKIP también es útil cuando se necesita una columna del conjunto de filas de entrada para realizar una combinación, pero la estructura de minería de datos no utiliza la columna. Un ejemplo típico de esto es una estructura y un modelo de minería de datos que contienen una tabla anidada. El conjunto de filas de entrada para esta estructura tendrá una columna de clave externa que se utiliza para crear un conjunto de filas jerárquico mediante la cláusula SHAPE, pero la columna de clave externa casi nunca se utiliza en el modelo.

La sintaxis de SKIP requiere que se inserte SKIP en la posición de la columna individual en el conjunto de filas de entrada que no tiene ninguna columna de estructura de minería de datos correspondiente. Por ejemplo, en el ejemplo de tabla anidada siguiente, OrderNumber debe estar seleccionado en la cláusula APPEND para que se pueda utilizar en la cláusula RELATE con el fin de especificar la combinación; sin embargo, no desea insertar los datos de OrderNumber en la tabla anidada de la estructura de minería de datos. Por consiguiente, el ejemplo utiliza la palabra clave SKIP en lugar de OrderNumber en el argumento de INSERT INTO.

Consulta de datos de origen

El <elemento de consulta> de datos de origen puede incluir los siguientes tipos de origen de datos:

  • OPENQUERY

  • OPENROWSET

  • FORMA

  • Cualquier consulta de Analysis Services que devuelva un conjunto de filas

Para obtener más información sobre los tipos de origen de datos, consulte <consulta> de datos de origen.

Ejemplo básico

En el ejemplo siguiente se usa OPENQUERY para entrenar un modelo bayes naive basado en los datos de correo de destino de la AdventureWorksDW2022 base de datos.

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

Ejemplo de tabla anidada

En el ejemplo siguiente se usa SHAPE para entrenar un modelo de minería de datos de asociación que contiene una tabla anidada. Tenga en cuenta que la línea fist contiene SKIP en su lugar OrderNumber, que es necesaria en la instrucción SHAPE_APPEND , pero no se usa en el modelo de minería de datos.

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

Consulte también

Instrucciones de definición de datos de extensiones de minería de datos (DMX)
Instrucciones de manipulación de datos de extensiones de minería de datos (DMX)
Referencia de instrucciones de Extensiones de minería de datos (DMX)