# match Komut dosyası ve grafik fonksiyonu

match fonksiyonu, ilk parametreyi ondan sonra gelen tüm parametrelerle karşılaştırır ve eşleşen ifadelerin sayısal konumunu döndürür. Karşılaştırma büyük/küçük harf duyarlıdır.

Söz Dizimi:

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

Dönüş verileri türü: tamsayı

İpucu notuBüyük/Küçük harf duyarlılığı olmayan karşılaştırma kullanmak isterseniz mixmatch fonksiyonunu kullanın. Büyük/Küçük harf duyarlılığı olan karşılaştırma ve joker karakterler kullanmak isterseniz wildmatch fonksiyonunu kullanın.

Bağımsız Değişkenler

| Bağımsız Değişken | Açıklama |
| --- | --- |
| str | Değerlendirilecek dize. |
| expr1 | Geçerli bir sayı temsili denetimi için ilk ifade. |
| expr2 | Geçerli bir sayı temsili denetimi için ikinci ifade. |
| expr3 | Geçerli bir sayı temsili denetimi için üçüncü ifade. |

Örnek: Grafik ifadeleri

| Örnek | Sonuç |
| --- | --- |
| `match( ColorCode,'Blue','Black' )` | Bu ifade, eşleşmenin dizinini `ColorCode` alanına döndürür. `ColorCode` değeri `Blue` ise `1` döndürür. `ColorCode` değeri `Black` ise `2` döndürür. Herhangi bir eşleşme bulunamazsa `0` döndürülür. |
| `match( Region, 'North', 'East' )` | Bu ifade, eşleşmenin dizinini `Region` alanına döndürür. `Region` değeri `North` ise `1` döndürür. `Region` değeri `East` ise `2` döndürür. Herhangi bir eşleşme bulunamazsa `0` döndürülür. |

Bu konudaki bazı örnekler satır içi yüklemeler kullanmaktadır. [Veri yüklemek için satır içi yüklemeler kullanma](https://help.qlik.com/tr-TR/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/inline-loads-qs.htm)

## Örnek - match kullanarak ürünleri kategorilere ayırın

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

#### Grafik ifadesi

Genel bakış

Bir veri kümesi ürün verilerini içerir. Sarf edilebilir ürünleri tanımlamak ve kategorize etmek istiyorsunuz.

Veri yükleme düzenleyicisini açın ve aşağıdaki komut dosyasını yeni bir bölüme ekleyin.

Komut dosyası şunları içerir:

* `Example` adlı veri tablosuna yüklenen bir veri kümesi.

* Veri tablosundaki şu alanlar:

  * `ProductID`

  * `ProductName`

  * `ProductCategory`

Komut dosyası

```
Example:
LOAD * INLINE [
ProductID, ProductName, ProductCategory
1, "Laptop", "Electronics"
2, "Banana", "Fruits"
3, "Shampoo", "Toiletries"
4, "TV", "Electronics"
5, "Apple", "Fruits"
];
```

Sonuçlar

Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanları boyut olarak ekleyin:

* `ProductID`

* `ProductName`

* `ProductCategory`

Aşağıdaki hesaplamaları oluşturun:

* `=match(ProductCategory,'Toiletries', 'Fruits')`, `ProductCategory` öğesinin `Toiletries` veya `Fruits` değerine sahip olduğu dizini döndürmek için.

* `=If(match(ProductCategory, 'Toiletries', 'Fruits'), 'Consumable', 'Other')`, `ProductCategory` öğesinin `Toiletries` veya `Fruits` değerine sahip olduğu dizini döndürmek için. Her ikisi de bulunursa `Consumable` döndürülür. Aksi takdirde, `Other` döndürülür.

Sonuçlar tablosu

| ProductID | ProductName | ProductCategory | match(ProductCategory,'Toiletries', 'Fruits') | If(match(ProductCategory, 'Toiletries', 'Fruits'), 'Consumable', 'Other') |
| --- | --- | --- | --- | --- |
| 1 | Laptop | Electronics | 0 | Other |
| 2 | Banana | Fruits | 2 | Consumable |
| 3 | Shampoo | Toiletries | 1 | Consumable |
| 4 | TV | Electronics | 0 | Other |
| 5 | Apple | Fruits | 2 | Consumable |

`match` fonksiyonu, ilk hesaplamadaki arama dizesinin dizinini döndürür. İkinci ölçümde, bu sonuç daha sonra ürünleri `Consumable` veya `Other` olarak kategorize etmek için bir `If` fonksiyonunda kullanılır.

## Örnek - match kullanarak müşteri verilerini değerlendirin ve sınıflandırın

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

#### Grafik ifadesi

Genel bakış

Bir veri kümesi müşteri verilerini içerir. Bölge ve sektör kategorisi sınıflandırma gereksinimlerinizi karşılayan müşterileri belirlemek ve kategorize etmek istiyorsunuz.

Veri yükleme düzenleyicisini açın ve aşağıdaki komut dosyasını yeni bir bölüme ekleyin.

Komut dosyası şunları içerir:

* `Example` adlı veri tablosuna yüklenen bir veri kümesi.

* Veri tablosundaki şu alanlar:

  * `ClientID`

  * `ClientName`

  * `Region`

  * `Industry`

Komut dosyası

```
Example:
LOAD * INLINE [
ClientID, ClientName, Region, Industry
1, "Acme Corp", "North", "Manufacturing"
2, "Beta Ltd", "East", "Technology"
3, "Gamma Inc", "West", "Retail"
4, "Delta LLC", "North", "Technology"
5, "Epsilon GmbH", "South", "Healthcare"
];
```

Sonuçlar

Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanları boyut olarak ekleyin:

* `ClientID`

* `ClientName`

* `Region`

* `Industry`

Şu hesaplamayı oluşturun:

`=IF(match(Region, 'North', 'East') AND match(Industry, 'Technology', 'Manufacturing'), 'Target Segment', 'Secondary Segment')`, arama dizesinin dizinini döndürmek için. Bulunursa `Target Segment` döndürülür. Bulunmazsa `Secondary Segment` döndürülür.

Sonuçlar tablosu

| ClientID | ClientName | Region | Industry | IF(match(Region, 'North', 'East') AND match(Industry, 'Technology', 'Manufacturing'), 'Target Segment', 'Secondary Segment') |
| --- | --- | --- | --- | --- |
| 1 | Acme Corp | North | Manufacturing | Target Segment |
| 2 | Beta Ltd | East | Technology | Target Segment |
| 3 | Gamma Inc | West | Retail | Secondary Segment |
| 4 | Delta LLC | North | Technology | Target Segment |
| 5 | Epsilon GmbH | South | Healthcare | Secondary Segment |

`match` fonksiyonu metin arar ve daha sonra ek analiz ve veri sınıflandırması gerçekleştirmek için kullanılabilecek bir dizin döndürür. Örneğin, `Acme Corp` hem `Region` hem de `Industry` alanları için `match` fonksiyonunun arama gereksinimlerini karşıladığından `Target Segment` olarak sınıflandırılır.

## Örnek: match kullanan komut dosyası

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

#### Komut dosyası

Genel bakış

Veri alt kümesini yüklemek için match öğesini kullanabilirsiniz. Örneğin, fonksiyondaki bir ifade için sayısal değer döndürebilirsiniz. Daha sonra, yüklenen verileri sayısal değere göre sınırlayabilirsiniz. Bir eşleşme olmadığında Match fonksiyonu, 0 değerini döndürür. Bu nedenle bu örnekte eşleşmeyen tüm ifadeler 0 değerini döndürür ve `WHERE` deyimi tarafından veri yüklemesinden hariç tutulur.

Veri yükleme düzenleyicisini açın ve aşağıdaki komut dosyasını yeni bir bölüme ekleyin.

Komut dosyası şunları içerir:

* Şu ada sahip iki veri tablosuna yüklenen bir veri kümesi:

  * `Transactions`: İşlem alanlarını içerir

  * `Transaction_Buckets`: İki yeni alan oluşturur: `Customer` ve `Color Code Blue and Black`. `where` deyimi, `match` fonksiyonundan elde edilen sonuçları yükler.

Komut dosyası

```
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 statement 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; 
```

Sonuçlar

Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanları boyut olarak ekleyin:

* `[Color Code Blue and Black]`

* `Customer`

Komut dosyasındaki matchmatch fonksiyonunun kullanılmasından elde edilen çıktıyı gösteren sonuçlar tablosu

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

## Örnek - match kullanan grafik ifadesi

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

#### Grafik ifadesi

Genel bakış

Veri yükleme düzenleyicisini açın ve aşağıdaki komut dosyasını yeni bir bölüme ekleyin.

Komut dosyası şunları içerir:

* Example adlı veri tablosuna yüklenen bir veri kümesi.

* Veri tablosundaki şu alanlar:

  * Cities

  * Count

Komut dosyası

```
Example:
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];
```

Sonuçlar

Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanı boyut olarak ekleyin:

* Cities

Aşağıdaki hesaplamaları oluşturun:

* =match( Cities,'Toronto','Boston','Beijing','Zurich'), arama dizesinin dizinini döndürmek için.

* =match( Cities,'Toronto','Boston','Beijing','Stockholm','zurich'), arama dizesinin dizinini döndürmek için.

* =Cities & ' - ' & match ( Cities, 'Toronto','Boston', 'Beijing','Stockholm','zurich'), Cities alanını ve arama dizesinin dizinini döndürmek için.

match fonksiyonundaki ifade listesinde Stockholm yer almadığından, aşağıdaki tablodaki ilk hesaplama, Stockholm için 0 değerini döndürür. Ayrıca match karşılaştırması büyük/küçük harfe duyarlı olduğundan Zurich için 0 döndürür.

Sonuçlar tablosu

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

## Örnek - match kullanan özel sıralama ifadesi

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

#### Grafik ifadesi

Genel bakış

Bir ifadede özel bir sıralama işlemi yapmak için match kullanabilirsiniz. Bu örnekte, önceki örnekle aynı veri kümesi kullanılır.

Varsayılan olarak sütunlar, verilere bağlı olarak sayısal veya alfabetik şekilde sıralanır.

Varsayılan sıralama düzenini gösteren sonuçlar tablosu

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

Sıralama düzenini değiştirmek için aşağıdakileri yapın:

1. Özellikler panelinde grafiğiniz için Sıralama bölümünü açın.

2. Özel sıralama yapmak istediğiniz sütun için otomatik sıralamayı kapatın.

3. Sayısal olarak sırala ve Alfabetik olarak sırala onay kutularını temizleyin.

4. İfadeye göre sırala seçeneğini belirleyin ve şuna benzer bir ifade girin:

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

   Cities sütunundaki sıralama düzeni değişir.

matchmatch fonksiyonunu kullanan sıralama düzenini gösteren sonuçlar tablosu

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

## Daha fazla bilgi

* [mixmatch Komut dosyası ve grafik fonksiyonu](https://help.qlik.com/tr-TR/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/mixmatch.htm)
* [wildmatch Komut dosyası ve grafik fonksiyonu](https://help.qlik.com/tr-TR/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/wildmatch.htm)