INSERT INTO (DMX)
指定されたデータ マイニング オブジェクトを処理します。マイニング モデルとマイニング構造の処理の詳細については、「データ マイニング オブジェクトの処理」を参照してください。
マイニング構造が指定された場合、ステートメントはマイニング構造とすべての関連するマイニング モデルを処理します。マイニング モデルが指定された場合、ステートメントはマイニング モデルだけを処理します。
構文
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>
引数
- model
モデル識別子です。
- structure
構造識別子です。
- mapped model columns
列の識別子と入れ子になった識別子のコンマ区切りのリストです。
- source data query
プロバイダ定義形式のソース クエリです。
解説
MINING MODEL または MINING STRUCTURE を指定しない場合、Analysis Services は名前に基づいてオブジェクト タイプを検索して、正しいオブジェクトを処理します。サーバーが同じ名前のマイニング構造とマイニング モデルを持つ場合、エラーが返されます。
2 つめの構文形式である INSERT INTO*<object>*.COLUMN_VALUES を使用することによって、モデルを学習せずに、モデル列内にデータを直接挿入できます。この方法によって、階層あるいは順序付けられた列を含むデータセットを使用する場合に便利な順序で、簡単に列データがモデルに提供されます。
INSERT INTO をマイニング モデルまたはマイニング構造と共に使用し、<mapped model columns> と <source data query> 引数を使用しない場合、ステートメントは、すでに存在するバインドを使用して ProcessDefault のように動作します。バインドが存在しない場合、ステートメントはエラーを返します。ProcessDefault の詳細については、「処理オプションと設定」を参照してください。次の例に構文を示します。
INSERT INTO [MINING MODEL] <model>
MINING MODEL を指定して、列とソース データ クエリのマップを提供した場合、モデルおよび関連する構造が処理されます。
次の表は、オブジェクトの状態に依存する、異なる形式のステートメントの結果について示しています。
ステートメント | オブジェクトの状態 | 結果 |
---|---|---|
INSERT INTO MINING MODEL<model> |
マイニング構造は処理されます。 |
マイニング モデルは処理されます。 |
|
マイニング構造は処理されません。 |
マイニング モデルとマイニング構造は処理されます。 |
|
マイニング構造に追加のマイニング モデルが含まれます。 |
処理は失敗します。構造と関連するマイニング モデルを再処理する必要があります。 |
INSERT INTO MINING STRUCTURE<structure> |
マイニング構造は処理されるか処理に失敗します。 |
マイニング構造と関連するマイニング モデルは処理されます。 |
INSERT INTO MINING MODEL ソース クエリを含む <model> または INSERT INTO MINING STRUCTURE ソース クエリを含む <structure> |
構造またはモデルのどちらかがすでに内容に含まれます。 |
処理は失敗します。この演算を実行する前に、DELETE (DMX) を使用して、オブジェクトをクリアする必要があります。 |
モデル列のマップ
<mapped model columns> 要素を使用して、データ ソースからマイニング モデルへ列をマップできます。<mapped model columns> 要素は次の形式になります。
<column identifier> | SKIP | <table identifier> (<column identifier> | SKIP), ...
SKIP を使用して、ソース クエリに存在する必要があるがマイニング モデルには存在しない、特定の列を除外できますたとえば、このトピックで後述する入れ子になったテーブルの例では、SKIP は MyAssociationModel マイニング モデルの学習から OrderNumber 列を除外します。OrderNumber は、入れ子になったテーブル (Models テーブル) の外部キーとして使用されますが、マイニング モデルの Models テーブル列には存在しません。そのため、モデルを学習せずに、スキップすることができます。
ソース データ クエリ
<source data query> 要素は、次のデータ ソースの種類を含むことができます。
- OPENQUERY
- OPENROWSET
- SHAPE
- 行セットを返す、すべての Analysis Services クエリ
データ ソースの種類の詳細については、「<source data query>」を参照してください。
基本の例
次の例は、OPENQUERY を使用して、AdventureWorksDW データベースの対象となるマイニング データに基づいて Naive Bayes モデルを学習します。
INSERT INTO NBSample (CustomerKey, Gender, [Number Cars Owned],
[Bike Buyer])
OPENQUERY([Adventure Works DW],'Select CustomerKey, Gender, [NumberCarsOwned], [BikeBuyer] FROM [vTargetMail]')
入れ子になったテーブルの例
次の例は、SHAPE を使用して、入れ子になったテーブルを含むアソシエーション モデルを学習します。
INSERT INTO MyAssociationModel
([OrderNumber],[Models] (SKIP, [Model])
)
SHAPE {
OPENQUERY([Adventure Works DW],'SELECT OrderNumber
FROM vAssocSeqOrders ORDER BY OrderNumber')
} APPEND (
{OPENQUERY([Adventure Works DW],'SELECT OrderNumber, model FROM
dbo.vAssocSeqLineItems ORDER BY OrderNumber, Model')}
RELATE OrderNumber to OrderNumber)
AS [Models]
参照
関連項目
データ マイニング拡張機能 (DMX) データ定義ステートメント
データ マイニング拡張機能 (DMX) データ操作ステートメント
データ マイニング拡張機能 (DMX) ステートメント リファレンス