# match – função de script e gráfico

A função match compara o primeiro parâmetro com todos os seguintes e retorna a localização numérica das expressões correspondentes. A comparação faz distinção de maiúsculas e minúsculas.

Sintaxe:

match( str, expr1 [ , expr2,...exprN ])

Nota de dicaSe você quer usar comparação que não diferencia caracteres maiúsculos de minúsculos, use a função mixmatch. Se você quer usar comparação que não diferencia caracteres maiúsculos de minúsculos e "caracteres curingas", use a função wildmatch.

Alguns dos exemplos neste tópico usam carregamentos inline. Para obter mais informações, consulte [Usando carregamentos inline para carregar dados](https://help.qlik.com/pt-BR/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/inline-loads-qs.htm).

## Exemplo: Script de carregamento usando match

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/match.htm)

#### Exemplo: Script de carregamento

Script de carregamento

Você pode usar match￼￼￼ para carregar um subconjunto de dados. Por exemplo, você pode retornar um valor numérico para uma expressão na função. Em seguida, é possível limitar os dados carregados com base no valor numérico. Match retornará 0 se não houver correspondência. Portanto, todas as expressões não correspondidas neste exemplo retornarão 0 e serão excluídas do carregamento de dados pelo comando WHERE.

Crie uma nova guia no editor de carregamento de dados e carregue os dados a seguir como um carregamento inline. Crie a tabela abaixo no Qlik Sense para ver os resultados.

```
Transactions:
Load * Inline [
transaction_id, transaction_date, transaction_amount, transaction_quantity, customer_id, size, color_code
3750, 20180830, 23.56, 2, 2038593, L, Red
3751, 20180907, 556.31, 6, 203521, m, orange
3752, 20180916, 5.75, 1, 5646471, S, blue
3753, 20180922, 125.00, 7, 3036491, l, Black
3754, 20180922, 484.21, 13, 049681, xs, Red
3756, 20180922, 59.18, 2, 2038593, M, Blue
3757, 20180923, 177.42, 21, 203521, XL, Black
];
 
/*
Create new table called Transaction_Buckets
Create new fields called Customer, and Color code - Blue and Black
Load Transactions table.
Match returns 1 for 'Blue', 2 for 'Black'. 
Does not return a value for 'blue' because match is case sensitive.
Only values that returned numeric value greater than 0 
are loaded by WHERE statment into Transactions_Buckets table.
*/
 
Transaction_Buckets:
Load
 customer_id,
 customer_id as [Customer], 
 color_code as [Color Code Blue and Black]
Resident Transactions
Where match(color_code,'Blue','Black') > 0; 
```

Resultados

Tabela do Qlik SenseQlik Sense mostrando a saída do uso da função matchmatch no script de carregamento

| Color Code Blue and Black | Customer |
| --- | --- |
| Black | 203521 |
| Black | 3036491 |
| Blue | 2038593 |

## Exemplos - Expressões de gráfico usando match

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/match.htm)

#### Exemplos: Expressões de gráfico

Expressão de gráfico 1

Script de carregamento

Crie uma nova guia no editor de carregamento de dados e carregue os dados a seguir como um carregamento inline. Depois de carregar os dados, crie os exemplos de expressão de gráfico abaixo em uma tabela do Qlik Sense.

```
MyTable:
Load * inline [Cities, Count
Toronto, 123
Toronto, 234
Toronto, 231
Boston, 32
Boston, 23
Boston, 1341
Beijing, 234
Beijing, 45
Beijing, 235
Stockholm, 938
Stockholm, 39
Stockholm, 189
zurich, 2342
zurich, 9033
zurich, 0039];
```

A primeira expressão da tabela a seguir retorna 0 para Stockholm, porque "Stockholm" não está incluído na lista de expressões da função match. Também retorna 0 para "Zurich", porque a comparação ￼￼￼match diferencia maiúsculas de minúsculas.

Tabela do Qlik SenseQlik Sense mostrando exemplos da função matchmatch em uma expressão de gráfico.

| Cities | match( Cities,'Toronto','Boston','Beijing','Zurich') | match( Cities,'Toronto','Boston','Beijing','Stockholm','zurich') |
| --- | --- | --- |
| Beijing | 3 | 3 |
| Boston | 2 | 2 |
| Stockholm | 0 | 4 |
| Toronto | 1 | 1 |
| zurich | 0 | 5 |

Expressão de gráfico 2

Você pode usar match para realizar uma classificação personalizada para uma expressão.

Por padrão, as colunas são classificadas numérica ou alfabeticamente, dependendo dos dados.

Tabela do ￼Qlik SenseQlik Sense mostrando um exemplo da ordem de classificação padrão

| Cities |
| --- |
| Beijing |
| Boston |
| Stockholm |
| Toronto |
| zurich |

Para alterar a ordem, faça o seguinte:

1. Abra a seção Classificação do gráfico no painel Propriedades.

2. Desative a classificação automática para a coluna na qual você deseja fazer uma classificação personalizada.

3. Desmarque ￼Classificar numericamente￼ e ￼Classificar alfabeticamente￼.

4. Selecione ￼Classificar por expressão￼ e insira uma expressão semelhante à seguinte:

   `=match( Cities, 'Toronto','Boston','Beijing','Stockholm','zurich')`

   A ordem de classificação na coluna ￼￼￼Cities é alterada.

Tabela do ￼Qlik SenseQlik Sense mostrando um exemplo de alteração da ordem de classificação usando a função ￼￼￼matchmatch

| Cities |
| --- |
| Toronto |
| Boston |
| Beijing |
| Stockholm |
| zurich |

Você também pode exibir o valor numérico retornado.

Tabela do ￼Qlik SenseQlik Sense mostrando um exemplo dos valores numéricos que são retornados da função ￼￼￼matchmatch

| Cidades | Cities & ' - ' & match ( Cities, 'Toronto','Boston', 'Beijing','Stockholm','zurich') |
| --- | --- |
| Toronto | Toronto - 1 |
| Boston | Boston - 2 |
| Beijing | Beijing - 3 |
| Stockholm | Stockholm - 4 |
| zurich | zurich - 5 |

## Saiba mais

* [mixmatch – função de script e gráfico](https://help.qlik.com/pt-BR/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/mixmatch.htm)
* [wildmatch – função de script e gráfico](https://help.qlik.com/pt-BR/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/wildmatch.htm)