Создание расширенных фильтров

Insights в ArcGIS Online
Insights в ArcGIS Enterprise
Insights desktop

Основой усовершенствованных фильтров служит выражение, которое может использоваться для создания пользовательского фильтра на уровне набора данных или карточки. Усовершенствованным фильтрам доступны те же операторы (например, +, ÷, > и <>) и функции, что и вычисленным полям.

Примечание:

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

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

Расширенные фильтры используются, когда запрос является сложным, или некоторая информация неизвестна или требует вычисления. Ниже приводятся примеры использования усовершенствованных фильтров:

  • У вас имеется набор данных о школах по всем штатам Америки, но вы хотели бы выполнить анализ по школам в графстве Даллас, штат Техас. Обычный фильтр для графства Даллас возвращает школы в Алабаме, Айове и Техасе. Усовершенствованный фильтр, используя выражение County="Dallas" AND State="Texas", применит фильтр к набору данных так, что будут возвращены только школы графства Даллас штата Техас.
  • У вас есть набор данных с местоположениями магазинов, доходами и расходами, но вы хотите видеть только убыточные магазины. Усовершенствованный фильтр, используя выражение Revenue<Expenses, применит фильтр к набору данных так, что будут возвращены только те магазины, в которых расходы выше доходов.
  • Имеется набор данных с местоположениями гидрантов, датами и статусом их проверки за несколько лет, а вам необходимо видеть только проверки поврежденных гидрантов, прошедшие в 2018 и позднее. Расширенный фильтр, используя выражение InspectionDate>=DATE(2018,01,01)AND Status="Damaged", применит фильтр к набору данных так, что будут возвращены только оценки ущерба, выполненные после 1 января 2018 года.
    Примечание:

    Функция даты, например DATE(), DATEVALUE() или NOW(), должна применяться в выражении расширенного фильтра с использованием поля даты/времени. Дата, введенная как строковое значение (например, "01/01/2018" для 1 января 2018 года), не будет считываться и не приведет к результатам.

Применение усовершенствованных фильтров на уровне набора данных

Для применения усовершенствованного фильтра на уровне набора данных выполните следующие шаги:

  1. Выберите набор данных, к которому вы хотели бы применить фильтр на панели данных.
  2. Нажмите кнопку Опции набора данных Опции набора данных рядом с соответствующим набором данных.
  3. В меню опций набора данных щелкните Усовершенствованный фильтр.
  4. Щелкнув внутри окна Выражение пользовательского фильтра, вы увидите доступные поля и функции и сможете начать написание своего выражения.
  5. В нижней части окна Выражение пользовательского фильтра наблюдайте зеленую метку Правильное выражение, означающую, что выражение корректно.
    Примечание:

    В выражении должен присутствовать пригодный для фильтра условный оператор, такой как < , = или <> (например, Revenue-Expenses>100000).

  6. Щелкните Применить.

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

Применение усовершенствованных фильтров на уровне карточки

Для применения усовершенствованного фильтра на уровне карточки выполните следующие шаги:

  1. Создайте карту, диаграмму или таблицу с помощью набора данных, к которому вы хотели бы применить фильтр.
  2. Нажмите кнопку Фильтр карточки Фильтр карточек на панели инструментов соответствующей карточки.
  3. На панели Новый фильтр выберите Усовершенствованный.
  4. Щелкнув внутри окна Выражение пользовательского фильтра, вы увидите доступные поля и функции и сможете начать написание своего выражения.
  5. В нижней части окна Выражение пользовательского фильтра наблюдайте зеленую метку Правильное выражение, означающую, что выражение корректно.
    Примечание:

    В выражении должен присутствовать пригодный для фильтра условный оператор, такой как < , = или <> (например, Revenue-Expenses>100000).

  6. Щелкните Применить.

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

Примечание:

Активная кнопка Фильтр карточек Фильтр карточек показывает количество фильтров, примененных к карточке, включая расширенные фильтры. При создании расширенного фильтра для карточки итоговый набор данных Результат расширенного фильтра карточки также добавится к панели данных с тем же фильтром, что и на уровне набора данных. Если новые карточки создаются с использованием итогового набора данных, то все карточки будут ссылаться на фильтр набора данных в итоговом наборе данных, а фильтр карточки будет удален из исходной карточки. Поскольку исходная карточка также ссылается на итоговый набор данных, в отображаемых данных изменений не будет.

Удаление или обновление расширенного фильтра

Для обновления расширенного фильтра на уровне набора данных выполните следующие шаги:

  1. Нажмите кнопку Опции набора данных Опции набора данных для набора данных, к которому применен расширенный фильтр.
  2. Нажмите Расширенный фильтр в меню опций набора данных.
  3. Вы можете сделать следующее:
    • Измените выражение фильтра и нажмите Применить, чтобы обновить фильтр.
    • Чтобы удалить фильтр, щелкните кнопку Удалить фильтр Удалить фильтр.

Для обновления расширенного фильтра карточки выполните следующие шаги:

  1. Нажмите активную кнопку Фильтр карточек Фильтр карточек.
  2. Щелкните фильтр, который хотите обновить.
  3. Вы можете сделать следующее:
    • Измените значения фильтра и нажмите Применить, чтобы обновить фильтр.
    • Чтобы удалить фильтр, щелкните кнопку Удалить фильтр Удалить фильтр.

Примеры выражений

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

ВыражениеОписание

DATEDIF(date_field, NOW(), "D")<=28

Фильтрует записи за последние 28 дней.

number_field>AVG(number_field)

Фильтрует строки, где значение number_field больше среднего.

number_field_1>number_field_2

Фильтрует строки, где значение number_field_1 больше значения number_field_2.

number_field<10 OR number_field>20

Фильтрует данные так, чтобы средние значения (в данном случае числа от 10 до 20) не включались.

string_field IS NOT NULL

Фильтрует данные так, чтобы включить только те строки, в которых поле содержит не null значения.