Поделиться через


SELECT FROM <модель>.CONTENT (расширения интеллектуального анализа данных)

Возвращает набор строк схемы модели интеллектуального анализа для определенной модели интеллектуального анализа данных.

Синтаксис

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

Аргументы

  • n
    (необязательный аргумент) Целое число, указывающее количество возвращаемых строк.

  • expression list
    Список столбцов с разделителем-запятой, полученных от набора строк схемы Content.

  • model
    Идентификатор модели.

  • condition expression
    (необязательный аргумент) Условие ограничения значений, возвращаемых из списка столбцов.

  • expression
    (необязательный аргумент) Выражение, возвращающее скалярное значение.

Замечания

Инструкция SELECT FROM <модель>.CONTENT возвращает содержимое, определенное для каждого алгоритма. Например, можно использовать описания всех правил модели правил взаимосвязей в пользовательском приложении. Можно использовать инструкцию SELECT FROM <model>.CONTENT для возврата значений в столбце NODE_RULE модели.

В следующей таблице перечислены столбцы, включенные в содержимое модели интеллектуального анализа данных.

ПримечаниеПримечание

Для правильного представления содержимого алгоритмы могут интерпретировать столбцы по-разному. Описание содержимого модели интеллектуального анализа данных для каждого алгоритма, а также рекомендации относительно методов интерпретации и запросов содержимого модели интеллектуального анализа данных для каждого типа модели см. в разделе Содержимое модели интеллектуального анализа данных (службы Analysis Services — интеллектуальный анализ данных).

столбец набора строк CONTENT

Описание

MODEL_CATALOG

Имя каталога. Имеет значение NULL, если поставщик не поддерживает каталоги.

MODEL_SCHEMA

Свободное имя схемы. Имеет значение NULL, если поставщик не поддерживает схемы.

MODEL_NAME

Имя модели. Этот столбец не может содержать значение NULL.

ATTRIBUTE_NAME

Имя атрибута, соответствующего этому узлу.

NODE_NAME

Имя узла.

NODE_UNIQUE_NAME

Уникальное имя узла внутри модели.

NODE_TYPE

Целое число, представляющее тип узла.

NODE_GUID

Идентификатор GUID узла. Имеет значение NULL, если идентификатор GUID отсутствует.

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

Количество вариантов, поддерживающих этот узел.

Примеры

Следующий фрагмент кода возвращает идентификатор родительского узла для модели деревьев принятия решений, которая была добавлена к структуре интеллектуального анализа данных «Целевая рассылка».

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

Ожидаемый результат:

MODEL_NAME

NODE_NAME

TM_DecisionTree

0

В следующем запросе для возврата непосредственных потомков узла, который был возвращен в предыдущем запросе, используется функция IsDescendant.

ПримечаниеПримечание

Поскольку значение NODE_NAME представляет собой строку, использовать инструкцию подзапроса выборки, возвращающего идентификатор NODE_ID, в качестве аргумента функции IsDescendant нельзя.

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

Ожидаемый результат.

Поскольку эта модель является моделью деревьев принятия решений, в число потомков родительского узла модели входят узел граничной статистики, узел, представляющий прогнозируемый атрибут, а также несколько узлов, содержащих входные атрибуты и значения. Дополнительные сведения см. в разделе Содержимое моделей интеллектуального анализа данных для моделей дерева принятия решений (службы Analysis Services — интеллектуальный анализ данных).

Использование ключевого слова FLATTENED

Содержимое модели интеллектуального анализа данных часто включает в себя интересные сведения о модели в столбцах вложенных таблиц. Ключевое слово FLATTENED дает возможность получать данные из столбцов вложенных таблиц, не прибегая к помощи поставщика, который поддерживает иерархические наборы строк.

Следующий запрос возвращает один узел — узел граничной статистики (NODE_TYPE = 26) — из модели упрощенного алгоритма Байеса. Однако этот узел содержит вложенную таблицу в столбце NODE_DISTRIBUTION. В результате столбец вложенной таблицы уплощается и для каждой строки вложенной таблицы возвращается строка. Значение скалярного столбца 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.PROBABILITY

NODE_DISTRIBUTION.VARIANCE

NODE_DISTRIBUTION.VALUETYPE

TM_NaiveBayes

Bike Buyer

Отсутствует

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

Отсутствует

0

TM_NaiveBayes

Bike Buyer

0

6556

TM_NaiveBayes

Bike Buyer

1

6383