Fala pessoal, tudo bom?

 

 

Neste post quero apresentar e tirar várias dúvidas com as formas de busca/pesquisa que o QlikView realiza em campos ou expressões. Vamos aprender essa sintaxe?

 

 

IMPORTANTE: Como tenho muito a falar sobre o assunto, irei dividir o post em duas etapas.

 

 

Muitas das dicas que passarei aqui já foram citadas por alguns posts na QlikCommunity, não deixem de ler:

 

 

Objetivo do post

 

Porque aprender esse assunto? É importante entender a sintaxe de pesquisa do QlikView para nos ajudar a criar disparadores, ações e também a implementações dos modificadores do Set Analysis.Mas afinal o que é e como são os tipos de busca/pesquisa que o QlikView realiza?




Pesquisa Inicial

 

Você pode escolher os tipos de pesquisa de um objeto através das seguintes opções:

  1. No objeto de lista, procure pela opção "Modo de Pesquisa Padrão" na aba "Geral" das propriedades.
  2. Nas propriedades do documento, é possível alterar o "Modo de Pesquisa Padrão" na aba "Apresentação".



Os tipos de pesquisa são:


  • Pesquisa Normal: Nenhum caractere adicional será incluído nos caracteres de pesquisa. Sem caracteres curinga, será realizada uma Pesquisa Normal.
  • Pesquisa Curinga: Os caracteres de pesquisa iniciais serão dois curingas com o cursor entre eles para facilitar a pesquisa curinga.
  • Pesquisa Avançada: O caractere de pesquisa inicial será um til (~) para indicar uma pesquisa avançada. Isto significa que todos os valores são classificados de acordo com a semelhança da pesquisa realizada e o valor melhor "rankeado" será selecionado.
  • Pesquisa Associativa: A pesquisa associativa será usada na caixa de pesquisa. A caixa de pesquisa contém uma divisa (>>) à direita. Se você clicar nela, a caixa de pesquisa será expandida para a direita e um conjunto secundário de resultados será exibido ao lado do conjunto principal de resultados.



OBSERVAÇÃO: Esses tipos de pesquisas podem ser chamados de pesquisa inicial, pois eles vão definir como será a sua busca a partir do momento que começar a digitar.

 

Formas de pesquisa


A forma mais simples de pesquisa é a de texto. O QlikView pesquisará os valores de campo correspondentes
aos caracteres de texto digitados.


Na pesquisa normal (nenhum caractere curinga), o QlikView buscará palavras que comecem com o caractere da pesquisa. Se a cadeia de caracteres da pesquisa contiver várias palavras separadas por espaços em branco, o QlikView a interpretará como vários caracteres de pesquisa e exibirá valores de campo que contenham qualquer um dos caracteres.


Se forem usados caracteres curinga, somente os registros correspondentes à cadeia de caracteres inteira da pesquisa serão exibidos, ou seja, um espaço em branco não implicará uma lógica OR. Os caracteres curinga podem aparecer diversas vezes na cadeia de caracteres da pesquisa, independentemente de sua localização.


Podem ser usados os seguintes caracteres curinga:


  • * - Zero ou mais caracteres
  • ? - Qualquer caractere único

 

 

IMPORTANTE: O sistema de pesquisa do QlikView não diferencia caractere maiúsculo de caractere minúsculo, em outras palavras, a sua busca não será sensível (not case sensitive). Existe duas maneiras pesquisa ser sensível: O texto não possui espaço como separador e você digitar o texto entre parênteses, ou através do uso de funções.

 

Vamos passar por alguns exemplos para entender, mas antes vou criar alguns dados:

 

Tabela:
LOAD
TEXTO,
RowNo() as NUMERO
INLINE [
TEXTO
YURI
Yuri
yuri
yuRi
Yuri Nicolett
YURI NICOLETT
yuri nicolett
Paula Nicolett
Nicodemos
];

 

 

 

 

Pesquisa Normal

 

Se digitarmos o texto puro, então o QlikView vai buscar por qualquer palavra que se inicie ou termine com a palavra digitada:

Pesquisa1

 

 

 

Se realizarmos a busca adicionando o texto entre parenteses, então o QlikView vai buscar o resultado exato, fazendo diferenciação entre Maiúsculo ou Minúsculo apenas para palavras que não possuem espaço:

Pesquisa11

 

Palavras da lista em que não conseguirei fazer a busca separadamente sem o uso de funções:

Pesquisa12

 

Podemos fazer a busca por mais de uma cadeia de caracteres utilizando o espaço entre os textos:

Pesquisa4

 

Se buscamos uma palavra que contenha espaços, então devemos utilizar aspas:

Pesquisa10

 

 

Pesquisa Curinga

Podemos evoluir a forma de pesquisa em caracteres de texto através da pesquisa curinga, ou seja, os caracteres irão substituir algo em que não tenho conhecimento.

 

Tudo o que se inicia com nico:

Pesquisa6

 

Busca por palavras que se iniciam por qualquer coisa, mas tenha nico em algum trecho e termine com qualquer coisa:

Pesquisa7

 

Busca por palavras que se iniciem por qualquer coisa, mas terminem com Nicolett:

Pesquisa9

 

 

Busca por palavras que se iniciam por 2 (dois) quaisquer primeiros caracteres e terminem e ri:

Pesquisa8

 

Pesquisa Numérica

Temos o mesmo comportamento da Pesquisa Normal para os numerais:

Pesquisa3

 

A vantagem é que podemos fazer a busca com comparações numéricas através dos sinais ">" e "<"

Pesquisa5

 

 

 

Pesquisa Com Funções

Você também pode fazer a pesquisa através do resultado obtido através de funções. Para isso não se esqueça de utilizar o sinal de igual '=' antes de escrever a sua função.

 

Lembra das três palavras que não eram possíveis de busca-las através de uma pesquisa? Podemos pesquisa-las através de funções, por exemplo:

Pesquisa13

 

Pesquisa de resultados através de agrupadores:

Busca somente os resultados em que o somatório da coluna NUMERO seja maior que 5

Pesquisa14

 

 

Busca somente os resultados em que a coluna TEXTO tenha mais do que 10 caracteres:

Pesquisa15

 

 

 

Pesquisa Avançada

 

Busca um resultado mesmo que o usuário tenha digitado o valor incorreto, isso ocorre devido ao rank de semelhança que o QlikView gera, ao selecionar o valor que mais se assemelha será selecionado:

Pesquisa16

 

 

 

 

Vamos dificultar?

Podemos complicar melhorar ainda mais os exercícios com a pesquisa curinga.

 

 

Busca pelo início das palavras

O circunflexo (^) no início da busca significa que queremos apenas o que se inicia nas palavras:

Pesquisa17

Reparem que a palavra "Nicolett Yuri" também foi incluída na pesquisa.

 

 

 

Se utilizar apenas a busca coringa pelo "y" também teremos o mesmo resultado para este exemplo, pois não temos nenhuma palavra que contenha o caractere y no meio das palavras.

Pesquisa18

 

 

No exemplo abaixo queremos buscar apenas palavras que contenha qualquer coisa, um espaço, o caractere y e depois qualquer coisa:

Pesquisa19

 

 

Comparação OU (Método OR)

Para fazermos a busca de uma sequência de caracteres ou outra, devemos utilizar o separador, entre as palavras, pipe "|" com toda a sequencia de caracteres entre parênteses, vamos lá:

 

Quero buscar Yuri Nicolett e Paula Nicolett (lembre-se: palavras com espaço devem ser procuradas com a utilização das aspas):

Pesquisa20

 

Quero buscar Yuri e Paula Nicolett:

Pesquisa21

 

 

Repare que na busca pela palavra Yuri, tive que adicionar os parênteses, caso contrário teríamos outros resultados:

Pesquisa22

 

 

Comparação E (Método AND)

 

Para fazermos a busca de uma sequência de caracteres e outra, devemos utilizar o separador, entre as palavras, e comercial "&" com toda a sequencia de caracteres entre parênteses, vamos lá:

Pesquisa23

 

 

 

 

Ainda vamos complicar mais, mas só na semana que vem!

 

Ah, segue o link para download da aplicação de teste: aqui!