次の方法で共有


SELECT FROM <model>。CONTENT (DMX)

適用対象: SQL Server Analysis Services

指定したデータ マイニング モデルのマイニング モデル スキーマ行セットを返します。

構文

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

引数

n
省略可能。 返す行数を指定する整数値です。

式リスト
コンテンツ スキーマ行セットから派生した列のコンマ区切りのリスト。

model
モデル識別子。

condition 式
省略可能。 列リストから返される値を制限する条件。

式 (expression)
省略可能。 スカラー値を返す式。

解説

SELECT FROM <model>。CONTENT ステートメントは、各アルゴリズムに固有のコンテンツを返します。 たとえば、カスタム アプリケーションで関連付けルール モデルのすべてのルールの説明を使用できます。 SELECT FROM <model>を使用できます。CONTENT モデルのNODE_RULE列の値を返すステートメント。

次の表に、マイニング モデルのコンテンツに含まれる列を示します。

Note

アルゴリズムは、コンテンツを正しく表すために列を異なる方法で解釈する場合があります。 各アルゴリズムのマイニング モデル コンテンツの説明と、各モデルの種類のマイニング モデル コンテンツを解釈およびクエリする方法に関するヒントについては、「 モデル コンテンツのマイニング (Analysis Services - データ マイニング)」を参照してください。

CONTENT 行セット列 説明
MODEL_CATALOG カタログ名です。 プロバイダーがカタログをサポートしない場合は NULL です。
MODEL_SCHEMA 修飾されていないスキーマ名。 プロバイダーがスキーマをサポートしない場合は NULL です。
MODEL_NAME モデル名。 この列に NULL を含むことはできません。
ATTRIBUTE_NAME ノードに対応する属性の名前です。
NODE_NAME ノード名。
NODE_UNIQUE_NAME モデル内のノードの一意の名前。
NODE_TYPE ノードの種類を表す整数です。 .
NODE_GUID ノード GUID。 GUID がない場合は NULL。
NODE_CAPTION ノードに関連付けられているラベルまはたキャプションです。 主に表示目的で使用されます。 キャプションが存在しない場合は、NODE_NAMEが返されます。
CHILDREN_CARDINALITY ノードが持つ子の数です。
PARENT_UNIQUE_NAME ノードの親の一意な名前です。
NODE_DESCRIPTION ノードの説明です。
NODE_RULE ノードに埋め込まれた規則を表す XML フラグメント。 XML 文字列の形式は、PMML 標準に基づいています。
MARGINAL_RULE 親からノードへのパスを記述する XML フラグメント。
NODE_PROBABILITY パスの末尾がノードになる確率です。
MARGINAL_PROBABILITY 親ノードからノードに到達する確率です。
NODE_DISTRIBUTION ノード内の値の分布を表す統計を含むテーブル。
NODE_SUPPORT このノードをサポートしているケースの数。

次のコードは、Targeted Mailing マイニング構造に追加されたデシジョン ツリー モデルの親ノードの ID を返します。

SELECT MODEL_NAME, NODE_NAME FROM [TM Decision Tree].CONTENT  
WHERE NODE_TYPE = 1  

期待される結果:

MODEL_NAME NODE_NAME
TM_DecisionTree 0

次のクエリでは、 IsDescendant 関数を使用して、前のクエリで返されたノードの直下の子を返します。

Note

NODE_NAMEの値は文字列であるため、sub-select ステートメントを使用して、 IsDescendant 関数の引数としてNODE_IDを返すことはできません。

SELECT NODE_NAME, NODETYPE, NODE_CAPTION   
FROM [TM Decision Tree].CONTENT  
WHERE ISDESCENDANT('0')  

期待される結果:

モデルはデシジョン ツリー モデルであるため、モデル親ノードの子孫には、単一の限界統計ノード、予測可能な属性を表すノード、および入力属性と値を含む複数のノードが含まれます。 詳細については、「 デシジョン ツリー モデルのモデル コンテンツの作成 (Analysis Services - データ マイニング)」を参照してください。

FLATTENED キーワードの使用

多くの場合、マイニング モデル コンテンツには、入れ子になったテーブル列のモデルに関する有用な情報が含まれています。 FLATTENED キーワードを使用すると、階層行セットをサポートするプロバイダーを使用せずに、入れ子になったテーブル列からデータを取得できます。

次のクエリでは、Naive Bayes モデルからマージナル統計ノード (NODE_TYPE = 26) という 1 つのノードが返されます。 ただし、このノードには、NODE_DISTRIBUTION列に入れ子になったテーブルが含まれています。 その結果、入れ子になったテーブル列がフラット化され、入れ子になったテーブルの行ごとに 1 つの行が返されます。 スカラー列 MODEL_NAME の値は、入れ子になったテーブルの各行に繰り返し表示されます。

また、入れ子になったテーブル列の名前のみを指定すると、入れ子になったテーブルの各列に対して新しい列が返されることに注意してください。 既定では、入れ子になったテーブルの名前が、入れ子になったテーブル列それぞれの名前の先頭に含まれます。

SELECT FLATTENED MODEL_NAME, NODE_DISTRIBUTION  
FROM [TM_NaiveBayes].CONTENT  
WHERE NODE_TYPE = 26  

結果の例:

MODEL_NAME NODE_DISTRIBUTION.ATTRIBUTE_NAME NODE_DISTRIBUTION。ATTRIBUTE_VALUE NODE_DISTRIBUTION.SUPPORT NODE_DISTRIBUTION。確率 NODE_DISTRIBUTION.VARIANCE NODE_DISTRIBUTION.VALUETYPE
TM_NaiveBayes Bike Buyer Missing 0 0 0 1
TM_NaiveBayes Bike Buyer 0 6556 0.506685215240745 0
TM_NaiveBayes Bike Buyer 1 6383 0.493314784759255 0

次の例は、下位選択ステートメントを使用して、入れ子になったテーブルから一部の列のみを返す方法を示しています。 次に示すように、入れ子になったテーブルのテーブル名の別名を付けることで、表示を簡略化できます。

SELECT MODEL_NAME,   
(SELECT ATTRIBUTE_NAME, ATTRIBUTE_VALUE, [SUPPORT] AS t  
FROM NODE_DISTRIBUTION)   
FROM TM_NaiveBayes.CONTENT  
WHERE NODE_TYPE = 26  

結果の例:

MODEL_NAME T.ATTRIBUTE_NAME t.ATTRIBUTE_VALUE t.SUPPORT
TM_NaiveBayes Bike Buyer Missing 0
TM_NaiveBayes Bike Buyer 0 6556
TM_NaiveBayes Bike Buyer 1 6383

参照

SELECT (DMX)
データ マイニング拡張機能 (DMX) データ操作ステートメント
データ マイニング拡張機能 (DMX) ステートメント リファレンス