# pick Komut dosyası ve grafik fonksiyonu

Pick fonksiyonu listedeki n. ifadeyi döndürür.

[Pick function](https://play.vidyard.com/i2VAER2iYbPyuC46aLGxG3)

Söz Dizimi:

pick(n, expr1[ , expr2,...exprN])

Dönüş verileri türü: dual

Bağımsız Değişkenler

| Bağımsız Değişken | Açıklama |
| --- | --- |
| n | n, 1 ile N arasında bir tamsayıdır. |

Örnek: Grafik ifadesi

| Örnek | Sonuç |
| --- | --- |
| `pick( N, 'A','B',4, 6<br><br>						)` | `N` = `2` ise `B` döndürür<br><br>`N` = `3` ise `4` döndürür |

## Örnek - pick kullanarak ürünlere etiket atayın

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

#### Grafik ifadesi

Genel bakış

Bir veri kümesi ürün verilerini içerir. Kategori koduna göre ürünlere kategori etiketleri atamak 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`

  * `CategoryCode`

Komut dosyası

```
Example:
LOAD * INLINE [
ProductID, ProductName, CategoryCode
1, "Laptop", 1
2, "Headphones", 2
3, "Printer", 3
4, "Smartphone", 1
5, "Tablet", 1
];
```

Sonuçlar

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

* `ProductID`

* `ProductName`

* `CategoryCode`

Şu hesaplamayı oluşturun:

* `=Pick(CategoryCode, 'Electronics', 'Accessories', 'Office Equipment')`, listeden geçerli bir ifade döndürmek için.

Sonuçlar tablosu

| ProductID | ProductName | CategoryCode | Pick(CategoryCode, 'Electronics', 'Accessories', 'Office Equipment') |
| --- | --- | --- | --- |
| 1 | Laptop | 1 | Electronics |
| 2 | Headphone | 2 | Accessories |
| 3 | Printer | 3 | Office Equipment |
| 4 | Smartphone | 1 | Electronics |
| 5 | Tablet | 1 | Electronics |

`pick` fonksiyonu, `CategoryCode` sayısal alanından ilgili dizinle ilişkili değerlerin bir listesini döndürür. Örneğin, `Electronics` etiketi fonksiyondaki ilk parametredir ve `1` `CategoryCode` etiketine sahip tüm ürünler için döndürülür.

## Örnek - pick kullanarak bölge etiketleri atayın

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

#### Grafik ifadesi

Genel bakış

Bir veri kümesi ülke ve bölge kodlarını içerir. Bölge koduna göre ülkelere bölge etiketleri atamak 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:

  * `Country`

  * `RegionCode`

Komut dosyası

```
Example:
LOAD * INLINE [
Country, RegionCode
"USA", 1
"Canada", 1
"Germany", 2
"Japan", 3
"Australia", 4
];
```

Sonuçlar

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

* `Country`

* `RegionCode`

Şu hesaplamayı oluşturun:

* `=Pick(RegionCode, 'North America', 'Europe', 'Asia', 'Australia')`, listeden geçerli bir öğe döndürmek için.

Sonuçlar tablosu

| Country | RegionCode | Pick(RegionCode, 'North America', 'Europe', 'Asia', 'Australia') |
| --- | --- | --- |
| Australia | 4 | Australia |
| Canada | 1 | North America |
| Germany | 2 | Europe |
| Japan | 3 | Asia |
| USA | 1 | North America |

`pick` fonksiyonu, `RegionCode` sayısal alanından ilgili dizinle ilişkili değerlerin bir listesini döndürür. Örneğin, `North America` etiketi fonksiyondaki ilk parametredir ve `1` `RegionCode` etiketine sahip tüm ülkeler için döndürülür.

## Örnek - Alternatif metin eşleşmeleri listelerini çevirmek için pick ve match adreslerini birleştirme

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

#### Grafik ifadesi

Genel bakış

Bu ileri düzey senaryoda, metin eşleşmelerini satır içinde eşleştirmek için `pick` ve `match` fonksiyonlarının bir kombinasyonunun nasıl etkili bir şekilde kullanılacağı açıklanmaktadır. Zamanlama açısından bu, `Case` deyimine benzer bir amaca hizmet eder. Senaryo, ülke adlarını bölge eş değeri adlarla eşleştirerek bu işlevselliği araştırırken, daha önce eşleştirilmemiş `Country` adları için varsayılan bir `Region` değeri sağlar.

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:

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

  * Veri tablosunda `Country` adında bir alan vardır.

Komut dosyası

```
Countries:
LOAD * INLINE [
Country
"USA"
"Canada"
"Germany"
"Japan"
"Australia"
"South Africa"
];
```

Sonuçlar

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

* `Country`

* `RegionCode`

Şu hesaplamayı oluşturun:

* `=Pick(1+match(Country,'USA','Canada','Germany','Japan','Australia'), 'Unmapped', 'North America', 'North America', 'Europe', 'Asia', 'Australia')`

`match` fonksiyonu, `1 = ‘USA’`, `2 = ‘Canada’` ve benzerlerinden başlayarak, verilen virgülle ayrılmış alternatiflerin dizin eşleşmesini döndürür. Herhangi bir eşleşme bulunamazsa sıfır döndürülür. Bu sonuç daha sonra `1` olarak artırılır ve `pick` fonksiyonuna sağlanır, öyle ki eşleşme bulunamazsa `1 = default value`, `2 = ‘USA’`, `3 = ‘Canada’` ve bu şekilde devam eder.

`Match` ve `Pick` fonksiyon çağrılarının bu kombinasyonu daha sonra eşleşen `Country` adlarının şifresini çözerek eş değer bir `Region` adı oluşturacaktır. Eşlenmemiş `Country` değerleri varsayılan `Region` değeri olan `Unmapped` değerini döndürür.

Sonuçlar tablosu

| Country | Pick(1+match(Country,'USA','Canada','Germany','Japan','Australia'), 'Unmapped', 'North America', 'North America', 'Europe', 'Asia', 'Australia') |
| --- | --- |
| Australia | Australia |
| Canada | North America |
| Germany | Europe |
| Japan | Asia |
| South Africa | Unmapped |
| USA | North America |