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
- Left Join: Sol (ilk) tabloda yer alan tüm kayıtları korur ve sağ (ikinci) tablodan sadece eşleşen kayıtları ekler. Sağ tablodaki eşleşmeyen veriler atılır.
- Right Join: Sağ (ikinci) tabloda yer alan tüm kayıtları korur ve sol (ilk) tablodan sadece eşleşen kayıtları ekler. Sol tablodaki eşleşmeyen veriler atılır.
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 Join | Sol tablodaki tüm kayıtlar + sağdan eşleşenler |
| Right Join | Sağ tablodaki tüm kayıtlar + soldan eşleşenler |
| Inner Join | Sadece 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?
- Diyelim elimizde
Merkezlertablosu var. - Başka bir
Merkezlertablosu daha yüklemek istiyoruz ama aynı alanlara sahip. - Eğer
Concatenatekullanırsak, ikinci tablo verileri birinci tablonun altına eklenir. - Böylece iki tablo birleşik tek bir tablo olur, satırlar artar ama sütunlar aynı kalı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?
- Farklı kaynaklardan ya da dosyalardan gelen aynı yapıya sahip verileri birleştirmek için.
- Veri modelini sadeleştirir, gereksiz tablo sayısını azaltır.
Not: Eğer alanlar farklıysa Concatenate otomatik olmaz, tablonun yapısı eşleşmeli.

Yorum bırakın