Применение фильтра к модели интеллектуального анализа данных

Применимо к: SQL Server 2019 и более ранних версий Analysis Services Azure Analysis Services Fabric/Power BI Premium

Важно!

Интеллектуальный анализ данных не рекомендуется использовать в службах SQL Server 2017 Analysis Services, а в SQL Server 2022 Analysis Services его поддержка прекращена. Документация не обновляется для устаревших и неподдерживаемых функций. Дополнительные сведения см. в статье об обратной совместимости служб Analysis Services.

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

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

Условие для таблицы вариантов выбирает клиентов, имеющих доход от 30 000 до 40 000. Условие для вложенной таблицы выбирает клиентов, которые не приобрели какой-то конкретный товар.

Полное условие фильтра, созданное в этом примере, выглядит следующим образом:

[Income] > '30000'   
AND  [Income] < '40000'   
AND EXISTS (SELECT * FROM [<nested table name>]   
WHERE [Model] <> 'Water Bottle' )   

Создание фильтра вариантов в модели интеллектуального анализа данных

  1. В SQL Server Data Tools в Обозреватель решений щелкните структуру интеллектуального анализа данных, содержащую модель интеллектуального анализа данных, которую требуется отфильтровать.

  2. Перейдите на вкладку Модели интеллектуального анализа данных .

  3. Выберите модель и щелкните правой кнопкой мыши, чтобы открыть контекстное меню.

    -или-

    Выберите модель. Затем в меню Модель интеллектуального анализа данных выберите команду Настроить фильтр моделей.

  4. В диалоговом окне Фильтр модели щелкните верхнюю строку сетки в текстовом поле Столбец структуры интеллектуального анализа данных .

  5. Если источник данных содержит единственную плоскую таблицу, в раскрывающемся списке отображаются только имена столбцов этой таблицы.

    Если структура интеллектуального анализа данных содержит несколько таблиц, то в списке отображаются имена этих исходных таблиц. Имена столбцов не отображаются до тех пор, пока не будет выбрана таблица.

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

  6. Выберите столбец из раскрывающегося списка.

    Значок слева от текстового поля изменится, указывая, что выбранным элементом является таблица или столбец.

  7. Щелкните текстовое поле Оператор и выберите оператор из списка. Перечень допустимых операторов зависит от типа данных выбранного столбца.

  8. Щелкните текстовое поле Значение и введите значение в поле.

    Например, выберите в качестве столбца Доход , выберите оператор больше (>), а затем введите 30000.

  9. Щелкните следующую строку сетки.

    Созданное условие фильтра автоматически добавится к содержимому текстового поля «Выражение». Например [Income] > '30000'.

  10. Щелкните текстовое поле AND/OR в следующей строке сетки, чтобы добавить условие.

    Например, чтобы создать условие BETWEEN, выберите AND из раскрывающегося списка логических операндов.

  11. Выберите оператор и введите значение, как описано в шагах 7 и 8.

    Например, снова выберите Доход в качестве столбца, выберите оператор меньше (<), а затем введите 40000.

  12. Щелкните следующую строку сетки.

  13. Условие фильтра в текстовом поле «Выражение» автоматически обновится, чтобы включить новое условие. Законченное выражение выглядит следующим образом: [Income] > '30000'AND [Income] < '40000'

Добавление фильтра к вложенной таблице в модели интеллектуального анализа данных

  1. В диалоговом окне "Фильтр>модели" щелкните пустую строку в сетке в разделе Столбец структуры интеллектуального анализа данных.<

  2. Выберите имя вложенной таблицы из раскрывающегося списка.

    Значок в левой стороне текстового поля изменится, указывая, что выбранным элементом является имя таблицы.

  3. Щелкните текстовое поле Оператор и выберите Содержит или Не содержит.

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

  4. Щелкните поле Значение и нажмите кнопку (...), чтобы создать выражение.

    Откроется диалоговое <окно "Фильтр" с именем>. Это диалоговое окно позволяет задавать условия только для текущей таблицы, которая в данном случае является вложенной таблицей.

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

  6. Нажмите текстовое поле Оператор и выберите оператор из списка допустимых операторов для столбца.

  7. Щелкните поле Значение и введите значение.

    Например, в поле Столбец структуры интеллектуального анализа данных выберите значение Model. В поле Операторвыберите <>и введите значение Water Bottle. Это условие приведет к созданию следующего критерия фильтра:

EXISTS (SELECT * FROM [<nested table name>] WHERE [Model] <> 'Water Bottle' )   

Примечание

Так как число атрибутов вложенной таблицы потенциально не ограничено, SQL Server Analysis Services не предоставляет список возможных значений, из которых нужно выбрать. Необходимо вводить точное значение. Кроме того, во вложенной таблице не может использоваться оператор LIKE.

  1. При необходимости добавьте дополнительные условия, объединив их с помощью операторов AND или OR в поле AND/OR слева от сетки Условия . Нажмите кнопку ОК.

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

  3. Можно также дополнительно нажать кнопку Изменить запрос и вручную изменить критерий фильтра.

    Примечание

    Если какая-либо часть критерия фильтра изменена вручную, то сетка становится недоступной и работать с выражением фильтра в дальнейшем можно только в режиме изменения текста. Чтобы снова перейти в режим изменения с помощью сетки, необходимо очистить критерий фильтра и начать сначала.

См. также:

Фильтры для моделей интеллектуального анализа данных (службы Analysis Services — интеллектуальный анализ данных)
Задачи и инструкции по модели интеллектуального анализа данных
удалить фильтр из модели интеллектуального анализа данных