QlikWorld 2020 Global Konferans. Verilerinizden en iyi şekilde nasıl yararlanacağınızı keşfetmek için bize katılın. Fırsatı kaçırmayın. Şimdi kaydolun ve indirimden yararlanın.

Mantıksal tablolar arasındaki ilişkilendirmeler

Bir veritabanı çok sayıda tablo içerebilir. Her tablo bir öğe listesi olarak düşünülebilir; yani listedeki her kayıt, belirli türde bir nesnenin bir örneğini temsil eder.

Example:  

Bir tablonun müşteri listesi ve diğer tablonun fatura listesi olduğu bir örnekteki gibi iki tablo farklı öğeler içeren listelerse ve iki tablo müşteri numarası gibi ortak bir alana sahipse, bu genellikle iki tablo arasında bir ilişki olduğuna işaret eder. Standart SQL sorgu araçlarında, iki tablo neredeyse her zaman birleştirilmiş olmalıdır.

Qlik Sense kodunda tanımlanan tablolara mantıksal tablo adı verilir. Qlik Sense, tablolar arasında alan adlarına dayanarak ilişkilendirme yapar ve örneğin bir filtre bölmesinde bir alan değerinin seçilmesi gibi bir seçim yapıldığında birleştirmeleri gerçekleştirir.

Bu, ilişkilendirmenin birleştirme ile neredeyse aynı şey olduğu anlamına gelir. Tek fark, birleştirmenin kod yürütüldüğünde gerçekleştirilmesidir; mantıksal tablo genellikle birleştirmenin sonucudur. İlişkilendirme, mantıksal tablo oluşturulduktan sonra yapılır; ilişkilendirmeler her zaman mantıksal tablolar arasında yapılır.

Birbiriyle Country ve CustomerID alanları üzerinden ilişkilendirilen dört tablo: bir ülke listesi, bir müşteri listesi, bir işlem listesi ve bir üyelik listesi.

Four logical tables associated.

SQL doğal dış birleştirmesine kıyasla Qlik Sense ilişkilendirmesi

Qlik Sense ilişkilendirmesi, SQL doğal dış birleştirmesine benzer. Ancak ilişkilendirme daha geneldir: SQL içindeki bir dış birleştirme genellikle bir tablonun başka bir tabloya tek yönlü olarak yansıtılmasıdır. İlişkilendirme her zaman tam (çift yönlü) doğal dış birleştirmeyle sonuçlanır.

İlişkili alanlarda sıklık bilgileri

Çoğu ilişkili alanın, yani iki veya daha fazla tabloda ortak olan alanın kullanımına ilişkin bazı sınırlamalar vardır. Bir alan birden çok tabloda var olduğunda, Qlik Sense, veri sıklıklarını hesaplamak için tablolardan hangisini kullanması gerektiğini belirlemekte sorun yaşar.

Qlik Sense, dahil edilecek bir ana tabloyu tanımlamanın belirsiz olmayan bir yolu olup olmadığını (bazen vardır) belirlemek için verileri analiz eder, ancak çoğu durumda program yalnızca tahminde bulunabilir. Hatalı bir tahmin önemli olabileceğinden (Qlik Sense bir hesaplama hatası yapıyor gibi görünür), program, veri yorumlamasının ilişkili alanlar için belirsiz olduğu durumlarda belirli işlemlere izin vermemek üzere tasarlanmıştır.

İlişkili alanlara yönelik sınırlamalar

  1. Alanı gösteren bir filtre bölmesinde sıklık bilgilerinin görüntülenmesi mümkün değildir.
  2. Alana yönelik istatistik kutuları çoğu istatistiksel varlık için yok ifadesini gösterir.
  3. Grafiklerde, Distinct değiştiricisi etkinleştirilmemişse, sıklık bilgilerine dayanan fonksiyonları (Sum, Count fonksiyonları ve Average vb.) içeren ifadeler oluşturmak mümkün değildir. Her yeniden yüklemenin ardından, Qlik Sense tüm grafik ifadelerini tarayarak veri yapılarındaki değişikliklerin sonucunda herhangi bir belirsizlik oluşup oluşmadığını kontrol eder. Belirsiz ifadelerin bulunması durumunda, bir uyarı diyalog penceresi gösterilir ve ifade devre dışı bırakılır. Sorun düzeltilene kadar ifadenin etkinleştirilmesi mümkün olmaz. Bir günlük dosyası etkinleştirilmişse, tüm belirsiz ifadeler günlükte listelenir.

Geçici Çözüm

Bu sınırlamaları aşmanın basit bir yolu mevcuttur. Sıklık sayımlarının yapılması gereken tablodan, alanı yeni bir ad altında fazladan bir kez yükleyin. Ardından, sıklığı içeren bir filtre bölmesi, bir istatistik kutusu veya grafiklerdeki hesaplamalar için yeni alanı kullanın.