Daha önce yüklenmiş bir tablodan veri yüklemenin ve dönüştürmenin iki yolu vardır.
- Resident LOAD - burada yeni tablo yüklemek için Resident koşunu sonraki bir LOAD deyiminde kullanırsınız.
- Öncelikli yükleme - burada bir kaynak belirtmeden önceki LOAD veya SELECT deyiminden yükleme yaparsınız.
Resident mı, yoksa öncelikli LOAD mu?
Çoğu durumda, iki yöntemden herhangi biri kullanılarak aynı sonuç elde edilebilir. Öncelikli LOAD genellikle daha hızlı olan seçenektir, ancak Resident LOAD kullanmanız gereken durumlarla da karşılaşabilirsiniz:
- LOAD deyimini işlemeden önce kayıtları sıralamak için Order_by cümlesini kullanmak istediğiniz durumlar.
- Öncelikli LOAD deyiminin desteklenmediği şu öneklerden herhangi birini kullanmak istediğiniz durumlar:
- Crosstable
- Join
- Intervalmatch
Resident LOAD
Daha önce yüklenmiş bir tablodan veri yüklemek için, Resident koşulunu bir LOAD deyimi içinde kullanabilirsiniz. Bu kullanım, SELECT deyimiyle yüklenmiş veriler üzerinde hesaplamalar yapmak istediğinizde ve tarih veya sayısal değer işleme gibi Qlik Sense fonksiyonlarını kullanma seçeneğiniz bulunmadığı durumlarda yararlı olur.
Example:
Bu örnekte, tarih yorumlaması ilk Crosstable LOAD içinde yapılamadığından Resident yüklemesinde gerçekleştirilmektedir.
Öncelikli yükleme özelliği bir tabloyu tek geçişte yüklemenizi, ancak yine de birbirini izleyen çeşitli dönüşümler tanımlayabilmenizi sağlar. Temel olarak, normalde yaptığınız şekilde From veya Resident gibi bir kaynak niteleyicisi belirtmeksizin aşağıdaki LOAD veya SELECT deyiminden yükleme yapan bir LOAD deyimidir. İstediğiniz sayıda LOAD deyimini bu şekilde yığınlayabilirsiniz. Önce en alttaki deyim değerlendirilir, sonra üstündeki deyim değerlendirilir ve en üstteki deyim değerlendirilinceye kadar bu böyle devam eder.
Aynı sonuca Resident kullanarak da ulaşabilirsiniz, ancak çoğu durumda öncelikli LOAD daha hızlı olacaktır.
Öncelikli yüklemenin bir diğer avantajı, hesaplamayı tek bir yerde tutabilmeniz ve üstte yer alan LOAD deyimlerinde yeniden kullanabilmenizdir.
Example 1: SELECT deyimi ile yüklenen verileri dönüştürme
Bir veritabanından verileri SELECT deyimi kullanarak yüklerseniz, SELECT deyimindeki verileri yorumlamak için Qlik Sense fonksiyonlarını kullanamazsınız. Bunun çözüm yolu, veri dönüştürme işlemini yaptığınız noktada SELECT deyiminin yukarısına bir LOAD deyimi eklemektir.
Bu örnekte, dize olarak saklanan bir tarihi yorumlamak için LOAD deyimi içinde Qlik Sense Date# fonksiyonunu kullanıyor ve önceki SELECT deyimini de kaynak olarak kullanıyoruz.
Example 2: Hesaplamaları yeniden kullanarak kodunuzu basitleştirme
Bu örnekte, bir hesaplamayı kod içinde birçok kez kullanıyoruz:
Hesaplamayı ilk geçişe koyduğumuzda, öncelikli bir LOAD deyimindeki Age fonksiyonunda yeniden kullanabiliriz:
Önceki yükleme sınırlamaları
- Şu önekler, önceki LOAD ile birlikte kullanılamaz: Join, Crosstable ve Intervalmatch.
- Benzersiz kayıtları yüklemek için distinct kullanıyorsanız distinct yalnızca hedef tabloyu etkilediğinden birinci load deyimine distinct öğesini yerleştirmeniz gerekir.