Qlik Sense Dersleri 4 | Qlik Sense’te Tabloları Join Etme: Inner, Left, Right Join, Concatenate Uygulamaları

Qlik Sense’te güçlü ve doğru analizler yapabilmenin temelinde sağlam bir veri modeli yatar. Bu yazıda, tabloları birleştirirken en sık kullanılan yöntemler olan Inner Join, Left Join, Right Join, Concatenate ve NoConcatenate fonksiyonlarını örnek senaryolar ve görsellerle adım adım anlatacağız. Amacımız, doğru veri modellemesiyle hem performansı artırmak hem de analiz tutarlılığını sağlamaktır.

Öncelikle tablolarımızı yükleyelim; Bu case için örnek bir satış datası hazırladım. İçerisinde iller bölgeler satışlar ve tutarları mevcut.

Tüm bağlanacak alan adları ortak olmalı veri setimizi buna göre revize etmeliyiz. Ortaklaştırdıktan sonra veri modelini görüntüle sekmesine basarak ortaklaşmış tabloları bu şekilde görüntüleyebilriz.

Bu kodda iki tabloyu (Merkezler ve Bölgeler) birleştiriyoruz. Left Join, Merkezler tablosunu ana tablo olarak alır ve Bolgeler tablosundaki eşleşen satırları bu tabloya ekler. Eşleşme Bölge alanı üzerinden yapılır.Bu satır, Merkezler tablosuna Bolgeler tablosunu sola birleştirir. Yani Merkezler’deki her kayıt korunur, Bolgeler’den sadece eşleşenler eklenir.

Upper(bolge) as Bölge Bu ifade, Bolgeler tablosundaki bolge alanındaki tüm değerleri büyük harfe çevirir. Çünkü bazı veriler küçük, bazıları büyük harfli olabilir. Upper() fonksiyonu ile harf farkından kaynaklı eşleşme sorunlarını engelliyoruz.

Sonuç olarak, iki tabloyu Bölge alanına göre doğru şekilde eşleştirmek ve veriyi tutarlı hale getirmek için Left Join ve Upper() fonksiyonlarını kullanıyoruz. İki tablo başarıyla bağlandı.

Bu kodda iki tabloyu Bolgeler ve Merkezler alanları üzerinden Right Join ile birleştiriyoruz.

Right Join, sağdaki tabloyu (yani burada Merkezler tablosunu) esas alır. Yani Merkezler tablosundaki tüm kayıtlar korunur, soldaki tablo olan Bolgeler tablosundan sadece eşleşen kayıtlar eklenir. Eğer Bolgeler tablosunda Merkezler‘de karşılığı olmayan kayıt varsa, o kayıtlar atılır.

Upper(bolge) as Bölge şeklinde büyük harfe çeviriyoruz. Çünkü bazen verilerde küçük veya büyük harf farklılıkları olabilir, bu da eşleşmeyi engeller. Upper() fonksiyonu sayesinde iki tablodaki Bölge isimlerini tutarlı hale getirip doğru eşleşme sağlıyoruz.

Özetle, Right Join ile Merkezler tablosundaki tüm kayıtlar korunurken, Bolgeler tablosundaki uygun kayıtlar eklenir; Upper() ise harf uyumsuzluğundan kaynaklanan hataları önler.

Left Join ile Right Join Arasındaki Fark

Eğer Inner Join kullanırsan, Merkezler veya Bolgeler tablosunda karşılığı olmayan kayıtlar tamamen atılır. Oysa Left veya Right Join ile, bir tabloyu esas alıp diğerinden eşleşenleri ekleyerek daha fazla veri koruyabilirsin.

Join TürüHangi Kayıtlar Kalır?
Left JoinSol tablodaki tüm kayıtlar + sağdan eşleşenler
Right JoinSağ tablodaki tüm kayıtlar + soldan eşleşenler
Inner JoinSadece iki tabloda da eşleşen kayıtlar

Concatenate Nedir?

Concatenate iki veya daha fazla tablonun aynı yapıya (aynı sütunlara) sahip olduğunu varsayarak, bu tabloları alt alta eklemeye yarar.


Nasıl Çalışır?


Örnek Kullanım:

qlikKopyalaDüzenleConcatenate(Merkezler)
LOAD
    Bölge,
    Merkez
FROM [lib://QVD/LIVE/OTHER_SYSTEM/data2.xlsx]
(ooxml, embedded labels, table is Merkezler);

Bu kod, yeni yüklenen tabloyu var olan Merkezler tablosunun altına ekler.


Neden Kullanılır?


Not: Eğer alanlar farklıysa Concatenate otomatik olmaz, tablonun yapısı eşleşmeli.

aliiekici Avatar

Yazan:

Yorum bırakın