Qlik Sense Dersleri Veri Modellemede Kullanılan Yaygın Fonksiyonlar / If, Mid(), Trim(), Left(), Len(), Concat()


Veri modelleme, ham veriyi anlamlı ve analiz edilebilir bilgilere dönüştürme sanatıdır. Bu süreçte, veriyi temizlemek, dönüştürmek ve zenginleştirmek için çeşitli fonksiyonlara ihtiyaç duyarız. Bu blog yazımızda, Qlik Sense gibi modern veri analizi platformlarında sıklıkla karşımıza çıkan ve veri modelleme yolculuğunuzu kolaylaştıracak bazı temel fonksiyonları mercek altına alacağız.

Qlik Sense Arayüzü ve Veri Görselleştirme

Görsel: Qlik Sense Veri Şeması

Örneklerle İnceleyelim

1. Koşullu Mantığın Kalbi: If() Fonksiyonu

If() fonksiyonu, veri modellemenin en temel ve en güçlü araçlarından biridir. Belirli bir koşulun doğru olup olmamasına göre farklı sonuçlar üretmenizi sağlar. Veri setinizde yeni bir kategori oluşturmaktan, hatalı verileri düzeltmeye kadar geniş bir kullanım alanına sahiptir.

  • Söz Dizimi: if(koşul, doğru_ise_sonuç, yanlış_ise_sonuç)

Qlik Sense Arayüzü ve Veri Görselleştirme

Görsel: Qlik Sense Koşul

Neden Kullanılır?

  • Veriye yeni, türetilmiş nitelikler (dimension) eklemek.
  • Belirli kriterlere göre değerleri dönüştürmek veya kategorize etmek.
  • Hatalı veya eksik veriye varsayılan değerler atamak.

Qlik Sense Örneği: Diyelim ki satış verilerinizde “Satış Miktarı” (SalesAmount) adında bir alan var ve 1000 adetten fazla satış yapan ürünleri “Yüksek Performanslı”, diğerlerini “Düşük Performanslı” olarak işaretlemek istiyorsunuz.


2. Metin İşleme Sanatı: Mid() Fonksiyonu

Ham veriler genellikle istediğimiz formatta değildir. Metin tabanlı alanlarda (ürün kodları, isimler, adresler vb.) temizleme ve parçalama işlemleri yapmak için bir dizi metin fonksiyonuna ihtiyaç duyarız.

Mid(): Metnin Ortasından Çekmek

Bir metin dizisinin belirli bir konumundan başlayarak belirli sayıda karakteri çekmek için kullanılır.

  • Söz Dizimi: Mid(metin, başlangıç_konumu, karakter_sayısı)

Qlik Sense Arayüzü ve Veri Görselleştirme

Görsel: Qlik Sense Sözdizim

Bu formülde Mid(ALAN_ADI, X, Y) kullanımındaki X ve Y kısımlarını dilediğiniz gibi değiştirerek istediğiniz kesiti alabilirsiniz. Örneğin, ana hesap numaraları bulunan bir datada 600101235 gibi bir hesabın ilk 3 hanesini alarak 600 numaralı ana hesaplar altında verimizi rahatlıkla toplayabilir ve analiz edebiliriz.

Qlik Sense Arayüzü ve Veri Görselleştirme

Görsel: Qlik Sense Tablo


3. Trim(), Left(), Right(): Kenar Boşlukları ve Uçlardan Parçalama

  • Trim(metin): Bir metin dizisinin başındaki ve sonundaki boşlukları kaldırır. Veri kalitesini artırmak için vazgeçilmezdir.
  • Left(metin, karakter_sayısı): Bir metin dizisinin solundan (başından) belirli sayıda karakteri çeker.
  • Right(metin, karakter_sayısı): Bir metin dizisinin sağından (sonundan) belirli sayıda karakteri çeker.

İpucu: Bazı durumlarda SQL ve SAP’den veri alıp birleştirdiğimizde (örneğin, Müşteri Numarası SQL’den 25 olarak gelirken, SAP’den 25 şeklinde başında boşlukla gelebilmektedir), bu tür boşluk farklılıkları nedeniyle JOIN işlemleri başarısız olmaktadır. Bu sorunu yaşamamak için sağ ve sol boşlukları temizleyen fonksiyonlar hayat kurtarıcıdır. Left ve Right fonksiyonları ise karakterleri sayarak belirtilen sayı kadar parçalama yapmanıza olanak tanır.


Qlik Sense Arayüzü ve Veri Görselleştirme

Görsel: Qlik Sense Trimler

4. Değerleri Birleştirmek: Concat() ve Dual() Fonksiyonları

Concat(): Birden Fazla Satırı Tek Bir Metne Birleştirmek

Belirli bir boyuta göre gruplandırılmış bir alandaki tüm değerleri, belirli bir ayırıcı ile tek bir metin dizisinde birleştirir.

  • Söz Dizimi: Concat(ifade [, ayırıcı [, sıralama_ifadesi]])

Qlik Sense Arayüzü ve Veri Görselleştirme

Görsel: Qlik Sense Fonx

Neden Kullanılır?

  • Müşterinin satın aldığı tüm ürünleri tek bir hücrede göstermek.
  • Bir bölgedeki tüm şehirleri tek bir satırda listelemek.

5. Metin Uzunluğunu Bulma ve Veri Doğrulama: Len()

Len() fonksiyonu, bir metin dizisindeki karakter sayısını (uzunluğunu) döndürür. Basit gibi görünse de, veri doğrulaması, belirli format kontrolü ve diğer metin işleme fonksiyonlarıyla birlikte kullanıldığında oldukça güçlü bir araçtır.

  • Söz Dizimi: Len(metin)

Qlik Sense Arayüzü ve Veri Görselleştirme

Görsel: Qlik Sense Len

Neden Kullanılır?

  • Parçalama İçin Yardımcı: Diğer metin fonksiyonları (Mid, Left, Right) ile dinamik uzunluklar sağlamak.
  • Veri Doğrulama: Belirli bir alandaki değerlerin beklenen uzunlukta olup olmadığını kontrol etmek (örneğin, TC Kimlik Numarası 11 hane mi?).
  • Hatalı Veri Tespiti: Aşırı uzun veya çok kısa metin alanlarını belirlemek.
  • Koşullu İşlemler: Uzunluğa göre farklı akışlar kurgulamak.

Veri setimizde bu fonksiyonu kullanarak örneğin telefon numarası uzunluğunu saydırıp 10 değerine eşitse “Geçerli”, değilse “Geçersiz” yazdıran modeller kurgulayabiliriz.