SELECT DISTINCT FROM <модель > (расширения интеллектуального анализа данных)
Возвращает все возможные состояния выбранного столбца модели. Возвращаемые значения зависят от того, какие значения содержит указанный столбец — дискретные, дискретизированные числовые или непрерывные числовые значения.
Синтаксис
SELECT [FLATTENED] DISTINCT [TOP <n>] <expression list> FROM <model>
[WHERE <condition list>][ORDER BY <expression>]
Аргументы
n
(необязательный аргумент) Целое число, указывающее количество возвращаемых строк.expression list
Список связанных идентификаторов столбцов (производных от модели) или выражений.model
Идентификатор модели.condition list
Условие ограничения значений, возвращаемых из списка столбцов.expression
(необязательный аргумент). Выражение, возвращающее скалярное значение.
Замечания
Инструкция SELECT DISTINCT FROM работает только с отдельным столбцом или же с набором связанных столбцов. С набором несвязанных столбцов это предложение не работает.
Инструкция SELECT DISTINCT FROM позволяет напрямую ссылаться на столбец внутри вложенной таблицы. Например:
<model>.<table column reference>.<column reference>
Результаты выполнения инструкции SELECT DISTINCT FROM <model> различаются в зависимости от типа столбца. В следующей таблице описаны поддерживаемые типы столбцов и выводимые инструкцией данные.
Тип столбца |
Вывод |
---|---|
Дискретный |
Уникальные значения в столбце. |
Дискретный |
Средняя точка каждого дискретного сегмента памяти в столбце. |
Непрерывный |
Средняя точка для значений столбца. |
Пример дискретного столбца
Следующий образец кода основан на модели [TM Decision Tree], созданной при изучении учебника Учебник по основам интеллектуального анализа данных. Запрос возвращает уникальные значения, существующие в дискретном столбце Gender.
SELECT DISTINCT [Gender]
FROM [TM Decision Tree]
Образец результатов:
Gender |
---|
F |
M |
Для столбцов, содержащих дискретные значения, результаты всегда включают недостающее состояние, показанное как значение NULL.
Пример непрерывного столбца
Следующий образец кода возвращает средний, минимальный и максимальный возраст для всех значений столбца.
SELECT DISTINCT [Age] AS [Midpoint Age],
RangeMin([Age]) AS [Minimum Age],
RangeMax([Age]) AS [Maximum Age]
FROM [TM Decision Tree]
Образец результатов:
Midpoint Age |
Minimum Age |
Maximum Age |
---|---|---|
62 |
26 |
97 |
Кроме того, запрос возвращает одну строку значений NULL, которая представляет отсутствующие значения.
Пример дискретизированного столбца
Следующий образец кода возвращает среднее, максимальное и минимальное значения для каждого сегмента, созданного алгоритмом для столбца [Yearly Income]. Для воспроизведения результатов данного примера необходимо создать новую структуру интеллектуального анализа данных, идентичную [Targeted Mailing]. В окне мастера измените тип содержимого столбца Yearly Income с Continuous на Discretized.
Примечание |
---|
Можно также изменить модель интеллектуального анализа данных, созданную в учебнике по основам интеллектуального анализа данных, чтобы дискретизировать столбец структуры интеллектуального анализа данных, [Yearly Income]. Сведения о том, как это делается, см. в разделе Как изменить дискретизацию столбца в модели интеллектуального анализа данных. Однако изменение дискретизации столбца повлечет за собой повторную обработку структуры интеллектуального анализа данных; в итоге изменятся результаты других моделей, построенных с использованием этой структуры. |
SELECT DISTINCT [Yearly Income] AS [Bucket Average],
RangeMin([Yearly Income]) AS [Bucket Minimum],
RangeMax([Yearly Income]) AS [Bucket Maximum]
FROM [TM Decision Tree]
Образец результатов:
Bucket Average |
Bucket Minimum |
Bucket Maximum |
---|---|---|
24610.7 |
10000 |
39221.41 |
55115.73 |
39221.41 |
71010.05 |
84821.54 |
71010.05 |
98633.04 |
111633.9 |
98633.04 |
124634.7 |
147317.4 |
124634.7 |
170000 |
Видно, что значения столбца [Yearly Income] дискретизированы на пять сегментов. Кроме того, имеется дополнительная строка значений NULL, представляющая недостающие значения.
Количество десятичных разрядов в результатах зависит от клиента, использованного для выполнения запроса. Здесь они были округлены до двух десятичных разрядов, с одной стороны — для простоты, а с другой — чтобы отразить значения, показанные в среде Business Intelligence Development Studio.
К примеру, если при просмотре модели с помощью средства просмотра дерева решений щелкнуть узел, содержащий сгруппированных по показателю дохода клиентов, во всплывающей подсказке отобразятся следующие свойства узла:
Age >=69 AND Yearly Income < 39 221,41
Примечание |
---|
Минимальное значение минимального сегмента и максимальное значение максимального сегмента представляют собой самое высокое и самое низкое наблюдаемое значение. Предполагается, что все значения, остающиеся за пределами этого наблюдаемого диапазона, принадлежат минимальному и максимальному сегментам. |