SELECT FROM <modèle>.CONTENT (DMX)
Retourne l'ensemble de lignes du schéma de modèle d'exploration de données pour le modèle d'exploration de données spécifié.
Syntaxe
SELECT [FLATTENED] [TOP <n>] <expression list> FROM <model>.CONTENT
[WHERE <condition expression>]
[ORDER BY <expression> [DESC|ASC]]
Arguments
n
Facultatif. Entier qui spécifie le nombre de lignes à retourner.expression list
Liste de colonnes séparées par des virgules, dérivées de l'ensemble de lignes du schéma Content.model
Identificateur du modèlecondition expression
Facultatif. Condition pour restreindre les valeurs retournées de la liste des colonnes.expression
Facultatif. Expression qui retourne une valeur scalaire.
Notes
L'instruction SELECT FROM <modèle>.CONTENT retourne le contenu qui est spécifique à chaque algorithme. Imaginons par exemple que vous souhaitez utiliser les descriptions de toutes les règles d'un modèle de règles d'association dans une application personnalisée. Vous pouvez utiliser une instruction SELECT FROM <model>.CONTENT pour retourner les valeurs dans la colonne NODE_RULE du modèle.
Le tableau suivant répertorie les colonnes incluses dans le contenu du modèle d'exploration de données.
[!REMARQUE]
Les algorithmes peuvent interpréter les colonnes différemment afin de représenter le contenu de manière appropriée. Pour obtenir une description du contenu du modèle d'exploration de données pour chaque algorithme, ainsi que des conseils sur l'interprétation et l'interrogation de ce contenu pour chaque type de modèle, consultez Contenu du modèle d'exploration de données (Analysis Services - Exploration de données).
Colonne de l'ensemble de lignes CONTENT |
Description |
---|---|
MODEL_CATALOG |
Nom de catalogue. Valeur NULL si le fournisseur ne prend pas en charge les catalogues. |
MODEL_SCHEMA |
Nom de schéma non qualifié. Valeur NULL si le fournisseur ne prend pas en charge les schémas. |
MODEL_NAME |
Nom de modèle. Cette colonne ne peut pas contenir de valeur NULL. |
ATTRIBUTE_NAME |
Nom de l'attribut qui correspond au nœud. |
NODE_NAME |
Nom du nœud. |
NODE_UNIQUE_NAME |
Nom unique du nœud dans le modèle. |
NODE_TYPE |
Entier qui représente le type du nœud. |
NODE_GUID |
GUID du nœud. Valeur NULL en l'absence de GUID. |
NODE_CAPTION |
Étiquette ou légende associée au nœud. Principalement utilisée à des fins d'affichage. En l'absence de légende, NODE_NAME est retourné. |
CHILDREN_CARDINALITY |
Nombre d'enfants de ce nœud. |
PARENT_UNIQUE_NAME |
Nom unique du parent du nœud. |
NODE_DESCRIPTION |
Description du nœud. |
NODE_RULE |
Fragment XML qui représente la règle incorporée dans le nœud. Le format de la chaîne XML est basé sur la norme PMML. |
MARGINAL_RULE |
Fragment XML qui décrit le chemin d'accès du parent vers le nœud. |
NODE_PROBABILITY |
Probabilité du chemin d'accès qui se termine dans le nœud. |
MARGINAL_PROBABILITY |
Probabilité d'accès au nœud à partir du nœud parent. |
NODE_DISTRIBUTION |
Table qui contient des statistiques décrivant la distribution des valeurs dans le nœud. |
NODE_SUPPORT |
Nombre de cas de support de ce nœud. |
Exemple
Le code suivant retourne l'ID du nœud parent pour le modèle d'arbre de décision qui a été ajouté à la structure d'exploration de données de publipostage ciblé.
SELECT MODEL_NAME, NODE_NAME FROM [TM Decision Tree].CONTENT
WHERE NODE_TYPE = 1
Résultats attendus :
MODEL_NAME |
NODE_NAME |
---|---|
TM_DecisionTree |
0 |
La requête suivante utilise la fonction IsDescendant pour retourner le nombre d'enfants immédiats du nœud qui a été retourné dans la requête précédente.
[!REMARQUE]
La valeur de NODE_NAME étant une chaîne, vous ne pouvez pas utiliser d'instruction sub-select pour retourner la valeur NODE_ID comme argument pour la fonction IsDescendant.
SELECT NODE_NAME, NODETYPE, NODE_CAPTION
FROM [TM Decision Tree].CONTENT
WHERE ISDESCENDANT('0')
Résultats attendus :
S'agissant d'un modèle d'arbre de décision, les descendants du nœud parent du modèle incluent un nœud de statistiques marginales unique, un nœud qui représente l'attribut prévisible et plusieurs nœuds qui contiennent des attributs d'entrée et des valeurs. Pour plus d'informations, consultez Contenu du modèle d'exploration de données pour les modèles d'arbre de décision (Analysis Services - Exploration de données).
Utilisation du mot clé FLATTENED
Le contenu du modèle d'exploration de données contient fréquemment des informations intéressantes sur le modèle dans les colonnes de table imbriquée. Le mot clé FLATTENED vous permet de récupérer les données d'une colonne de table imbriquée sans utiliser de fournisseur qui prend en charge les ensembles de lignes hiérarchiques.
La requête suivante retourne un nœud unique, le nœud de statistiques marginales (NODE_TYPE = 26) d'un modèle Naive Bayes. Cependant, ce nœud contient une table imbriquée dans la colonne NODE_DISTRIBUTION. En conséquence, la colonne de table imbriquée est aplatie et une ligne est retournée pour chaque ligne de la table imbriquée. La valeur de la colonne scalaire MODEL_NAME est répétée pour chaque ligne de la table imbriquée.
Notez par ailleurs que si vous spécifiez uniquement le nom de la colonne de table imbriquée, une nouvelle colonne est retournée pour chaque colonne de la table. Par défaut, le nom de la table imbriquée est ajouté en préfixe au nom de chaque colonne de table.
SELECT FLATTENED MODEL_NAME, NODE_DISTRIBUTION
FROM [TM_NaiveBayes].CONTENT
WHERE NODE_TYPE = 26
Résultats de l'exemple :
MODEL_NAME |
NODE_DISTRIBUTION.ATTRIBUTE_NAME |
NODE_DISTRIBUTION.ATTRIBUTE_VALUE |
NODE_DISTRIBUTION.SUPPORT |
NODE_DISTRIBUTION.PROBABILITY |
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 |
L'exemple suivant montre comment retourner uniquement certaines des colonnes de la table imbriquée en utilisant une instruction sub-select. Vous pouvez simplifier l'affichage en utilisant un alias pour le nom de la table imbriquée, tel qu'indiqué.
SELECT MODEL_NAME,
(SELECT ATTRIBUTE_NAME, ATTRIBUTE_VALUE, [SUPPORT] AS t
FROM NODE_DISTRIBUTION)
FROM TM_NaiveBayes.CONTENT
WHERE NODE_TYPE = 26
Résultats de l'exemple :
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 |