Привет, друзья! Сегодня хочу рассмотреть организацию поиска в QlikView. Так, в качестве альтернативы выбора данных путем нажатия значений в объектах QlikView можно воспользоваться функцией текстового или числового поиска. И эта статья о том, как QlikView выполняет разные виды поиска по полям и выражениям и, как использовать эти возможности на максимум.

Поиск данных в QlikView

Расширенная функциональность поиска является важной частью системы QlikView. Как только мы набираем значения в поиске приложения QlikView, в списках начинается отображаться совпадающие элементы по поисковому запросу. И здесь возникает вопрос, а какой будет порядок сортировки этих найденных совпадений на основе встроенного механизма сравнений.

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

Давайте посмотрим на пример ниже. Обратите внимание, как разница в алгоритмах влияет на порядок сортировки для шведского и английского языков:

 

QlikView Search String     QlikView Search String

 

Поисковая строка одинаковая и в том, и в другом случае, а это вроде и означает, что отобранный список полей должен быть одним и тем же, но в итоге мы видим, что это не так. И, все-таки, как QlikView определяет, разные это буквы или нет? Когда система начинает искать совпадения, то поиск берутся на основе выбранных региональных настроек QlikView:

 

QlikView Search String

 

 

НА ЗАМЕТКУ! Большая часть статьи построена на материалах статей Хенрика Кронстрома, который выступал в прошлом году на выездном тренинге российского сообщества Qlik, qRUG Camp 2017.

Типы поиска данных в QlikView

Поисковая строка интерпретируется в разных случаях по-разному, в зависимости от типа поискового запроса:

  • Обычный поиск. Самый простой способ поиска — текстовый поиск. QlikView выполнит поиск значений полей, соответствующих введенной текстовой строке.

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

  • Поиск по шаблону. В строке поиска можно использовать один или несколько подстановочных знаков (например, *, ?, ^). При их использовании отобразятся только записи, соответствующие всей строке поиска, то есть пробел не подразумевает логическое ИЛИ.
  • Числовой поиск. Выборки также можно создать, используя числовой поиск. Он очень похож на текстовый поиск. Единственное различие состоит в том, что строка поиска должна начинаться с одного из следующих реляционных операторов >, <, >=, <=.
  • Поиск по выражению. Если поиск начинает со знака равно, то выполняется поиск по выражению. Например, при вводе выражения ‘=Sum(Sales)>1000’, агрегация будет выполнена для каждого выражения в поле, при выполнении условия выражения.
  • Нечеткий поиск. Нечеткий поиск выполняется также, как и стандартный, за исключением того факта, что при нечетком поиске выполняется сравнение и сортировка всех значений полей по степени соответствия строке поиска. Нечеткий поиск особенно полезен в ситуациях, когда на результат поиска могут повлиять орфографические ошибки. При выполнении нечеткого поиска перед строкой поиска отображается тильда  ‘~’.
  • Смешенный поиск. Для сложных выражений поиска можно использовать диалоговое окно «Расширенный поиск», которое можно открыть с помощью комбинации клавиш Ctrl+Shift+F.

 

НА ЗАМЕТКУ! Поиск может использоваться в анализе множеств, закладках, действиях и при работе с обращениями API.

На этом все на сегодня. Отличных вам разработок с Qlik!