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, представляющая недостающие значения.
Количество десятичных разрядов в результатах зависит от клиента, использованного для выполнения запроса. Здесь они были округлены до двух десятичных разрядов, с одной стороны — для простоты, а с другой — чтобы отразить значения, показанные в среде SQL Server Data Tools (SSDT).
К примеру, если при просмотре модели с помощью средства просмотра дерева решений щелкнуть узел, содержащий сгруппированных по показателю дохода клиентов, во всплывающей подсказке отобразятся следующие свойства узла:
Age >=69 AND Yearly Income < 39 221,41
![]() |
---|
Минимальное значение минимального сегмента и максимальное значение максимального сегмента представляют собой самое высокое и самое низкое наблюдаемое значение. Предполагается, что все значения, остающиеся за пределами этого наблюдаемого диапазона, принадлежат минимальному и максимальному сегментам. |
См. также
Справочник
SELECT (расширения интеллектуального анализа данных)
Инструкции управления данными расширений интеллектуального анализа данных
Справка по инструкции расширений интеллектуального анализа данных