Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Operador IN no Qlikview

Bom dia a todos,

Pessoal estou fazendo um exemplo onde preciso que apareça os moradores de 03 cidades ao mesmo tempo. No sql eu precisaria utilizar apenas o operador IN. Como faço no Qlikview. Desde já agradeço. Abraços.

Luiz Carlos

Labels (1)
1 Solution

Accepted Solutions
nicolett_yuri

Complementando a resposta do Thiago.

Match são funções que procuram por caracteres dentro de uma string informada.

MATCH = executa uma comparação que é sensível a maiúsculas

MIXMATCH = executa uma comparação que não diferencia maiúsculas de minúsculas

WILDMATCH = executa uma comparação que não diferencia maiúsculas de minúsculas e permite o uso

de caracteres curinga ( * e ?) nos caracteres de comparação

O retorno dessas funções é sempre um número, caso o valor a ser procurado seja encontrado, então será retornada a posição que esta procurando, por exemplo:

match( M, 'Jan','Fev','Mar')

Se M é Mar, então vai retornar 3

Por essa razão utilizei o ">0" = if(WILDMATCH(CT1_CTFIN ,'3.4.2*','3.6.1*')>0,Dual('Opex',3))

Ou seja, quero executar a função DUAL somente se ele encontrar alguns dos casos informados.

Caso eu queira negar, eu utilizo "=0" ou seja, executa somente se não encontrar nada.

View solution in original post

2 Replies
thiago_mlg
Creator II
Creator II

Luiz, bom dia!

o IN no qlikview é match

a sintaxe do comando é : match(campo,'val1','val2','val3')

se quiser utilizar com caracteres coringas, wildmatch

Veja busca ai no help sobre esses comandos.

Abraços

nicolett_yuri

Complementando a resposta do Thiago.

Match são funções que procuram por caracteres dentro de uma string informada.

MATCH = executa uma comparação que é sensível a maiúsculas

MIXMATCH = executa uma comparação que não diferencia maiúsculas de minúsculas

WILDMATCH = executa uma comparação que não diferencia maiúsculas de minúsculas e permite o uso

de caracteres curinga ( * e ?) nos caracteres de comparação

O retorno dessas funções é sempre um número, caso o valor a ser procurado seja encontrado, então será retornada a posição que esta procurando, por exemplo:

match( M, 'Jan','Fev','Mar')

Se M é Mar, então vai retornar 3

Por essa razão utilizei o ">0" = if(WILDMATCH(CT1_CTFIN ,'3.4.2*','3.6.1*')>0,Dual('Opex',3))

Ou seja, quero executar a função DUAL somente se ele encontrar alguns dos casos informados.

Caso eu queira negar, eu utilizo "=0" ou seja, executa somente se não encontrar nada.