Ana içeriğe geç Tamamlayıcı içeriğe geç

Aggr

Aggr() , belirtilen boyut veya boyutlar üzerinde hesaplanan ifade için bir değer dizisi döndürür. Örneğin, her bölge için müşteri başına maksimum satış değeri.

Aggr fonksiyonu, ilk parametrenin (iç toplama) her boyutsal değer için bir kez hesaplandığı iç içe toplamalarda kullanılır. Boyutlar ikinci parametrede (ve sonraki parametrelerde) belirtilir.

Ayrıca Aggr fonksiyonu, Aggr fonksiyonunun sonuç dizisi girdi olarak kullanılarak bir dış toplama fonksiyonunun içine alınmalıdır.

Söz Dizimi:  

Aggr({SetExpression}[DISTINCT] [NODISTINCT ] expr, StructuredParameter{, StructuredParameter})

Dönüş verileri türü: dual

Bağımsız Değişkenler:  

  • expr: Toplama işlevinden oluşan bir ifade. Toplama işlevi, varsayılan olarak, seçim tarafından tanımlanmış olası kayıtlar kümesi üzerinden toplanır.
  • StructuredParameter: StructuredParameter şu formattaki bir boyuttan ve isteğe bağlı olarak sıralama ölçütlerinden oluşur: (Dimension(Sort-type, Ordering)) Boyut tek bir alandır ve ifade olamaz. Boyut, Aggr ifadesinin hesaplandığı değer dizisini belirlemek için kullanılır.

    Sıralama ölçütleri dahil edilirse, Aggr fonksiyonu tarafından oluşturulan ve boyut için hesaplanan değer dizisi sıralanır. Sıralama düzeni, Aggr fonksiyonunun bulunduğu ifadenin sonucunu etkilediğinde bu önemlidir. Sıralama ölçütlerini kullanma ile ilgili ayrıntılar için bkz. Yapılandırılmış parametrede boyuta sıralama ölçütleri ekleme.

  • SetExpression: Toplama işlevi, varsayılan olarak, seçim tarafından tanımlanmış olası kayıtlar kümesi üzerinden toplanır. Bir set analizi ifadesi ile alternatif bir kayıt kümesi tanımlanabilir.
  • DISTINCT: İfade bağımsız değişkeninden önce distinct niteleyicisi geliyorsa veya hiçbir niteleyici kullanılmamışsa, boyut değerlerinin her bir tekil kombinasyonu yalnızca bir döndürülen değer üretir. Toplamalar normalde bu yolla yapılır; boyut değerlerinin her bir tekil kombinasyonu, grafikteki bir çizgiyi oluşturur.
  • NODISTINCT: İfade bağımsız değişkeninden önce nodistinct niteleyicisi geliyorsa, boyut değerlerinin her bir birleşimi, temel veri yapısına bağlı olarak, birden fazla döndürülen değer üretir. Yalnızca tek bir boyut varsa, aggrfonksiyonu kaynak verilerdeki satır sayısı ile aynı sayıda öğe içeren bir dizi döndürür.
 

Sum, Min ve Avg gibi temel toplama işlevleri tek bir sayısal değer döndürürken, Aggr() fonksiyonu, başka bir toplamanın gerçekleşebileceği geçici aşamalandırılmış bir sonuç kümesi oluşturulmasıyla karşılaştırılabilir. Örneğin, ortalama satış değerini hesaplamak için, bir Aggr() deyimi içinde müşterinin yaptığı satışların toplamının alınması ve sonra da toplamı alınan bu sonuçların ortalamasının hesaplanması: Avg(TOTAL Aggr(Sum(Sales), Customer)).

İpucu notuBirden fazla seviye halinde iç içe geçmiş grafik toplama oluşturmak isterseniz, hesaplanan boyutlarda Aggr() fonksiyonunu kullanın.

Sınırlamalar:  

Aggr() fonksiyonundaki her boyut tek bir alan olmalıdır ve bir ifade (hesaplanan boyut) olamaz.

Yapılandırılmış parametrede boyuta sıralama ölçütleri ekleme

Temel formuyla Aggr fonksiyon söz dizimindeki StructuredParameter bağımsız değişkeni tek bir boyuttur. İfade: Aggr(Sum(Sales, Month)), her bir ay için toplam satış değerini bulur. Ancak, başka bir toplama işlevine dahil edildiğinde, sıralama ölçütleri kullanılmazsa beklenmedik sonuçlar ortaya çıkabilir. Bunun nedeni, bazı boyutların sayısal veya alfabetik olarak sıralanması, vb. olabilir.

Aggr fonksiyonundaki StructuredParameter bağımsız değişkeninde, ifadenizdeki boyutta sıralama ölçütlerini belirtebilirsiniz. Böylece, Aggr fonksiyonu tarafından üretilen sanal tabloda bir sıralama düzeni uygularsınız.

StructuredParameter bağımsız değişkeni şu söz dizimine sahiptir:

(FieldName, (Sort-type, Ordering))

Yapılandırılmış parametreler iç içe geçebilir:

(FieldName, (FieldName2, (Sort-type, Ordering)))

Sıralam türü şunlar olabilir: NUMERIC, TEXT, FREQUENCY veya LOAD_ORDER.

Her Sıralama türüyle ilişkilendirilen sıralama türleri şöyledir:

Sıralama türlerini sırala
Sıralama türüKullanılabilir sıralama türleri
NUMERICASCENDING, DESCENDING veya REVERSE
TEXTASCENDING, A2Z, DESCENDING, REVERSE veya Z2A
FREQUENCYDESCENDING, REVERSE veya ASCENDING
LOAD_ORDERASCENDING, ORIGINAL, DESCENDING veya REVERSE

REVERSE ve DESCENDING sıralama türleri eşdeğerdir.

TEXT sıralama türü için ASCENDING ve A2Z sıralama türleri eşdeğer; DESCENDING, REVERSE ve Z2A eşdeğerdir.

LOAD_ORDER sıralama türü için ASCENDING ve ORIGINAL sıralama türleri eşdeğerdir.

Örnekler

Örnek 1:  

Avg(Aggr(Sum(UnitSales*UnitPrice), Customer))

Aggr(Sum(UnitSales*UnitPrice), Customer) ifadesi, Customer ölçütüne göre toplam satış değerini bulur ve bir değer dizisi döndürür: üç Customer değeri için 295, 715 ve 120.

Değerleri içeren özel bir tablo veya sütun oluşturmak zorunda kalmadan etkili bir şekilde değerlerin geçici listesini oluşturduk. Bu değerler Avg() fonksiyonu için giriş olarak kullanılır ve satışların ortalama değeri olarak 376,6667 bulunur. (Özellikler panelinde, Presentation'ın altında Toplamlar'ı seçmiş olmanız gerekir.

Örnek 2:  

Aggr(NODISTINCT Max(UnitPrice), Customer)

Değer dizisi: 16, 16, 16, 25, 25, 25, 19 ve 19. nodistinct niteleyicisi, dizinin kaynak verilerdeki her satır için tek bir element içerdiği anlamına gelir: her Customer ve Product için her biri maksimum UnitPrice olur.

Örnek 3:  

max(aggr(sum(Customers)-above(Sum(Customers)), (MonthYear,(NUMERIC, ASCENDING))))

İfadedeki StructuredParameter bağımsız değişkeninde sıralama ölçütleri kullanma: max(aggr(sum(Customers)-above(Sum(Customers)), (MonthYear,(NUMERIC, ASCENDING))))

Sıralama ölçütleri olmadan max(aggr(sum(Customers)-above(Sum(Customers)), (MonthYear))) ifadesinin sonucu, MonthYear boyutunun nasıl sıralandığına bağlıdır. İstediğiniz sonucu elde edemeyebiliriz. Boyuta sıralama türü ve sıralama türü değerleri ekleyerek yapılandırılmış parametreye sıralama ölçütleri veririz: (MonthYear, (NUMERIC, ASCENDING)); burada NUMERIC sıralama türü ve ASCENDING sıralaması, MonthYear öğesinin artan sayısal düzende sıralandığını belirler.

Burada, bir önceki aya göre müşteri sayısında en büyük artışı bulmaya çalışıyoruz. Bu, örneğin KPI görselleştirmesinde kullanılabilir.

İfadenin Aggr parçası, bir aydaki (MonthYear tarafından verilen) toplam müşteri sayısını, önceki aydaki toplam sayı ile karşılaştırır. Sıralama ölçütlerini (MonthYear,(NUMERIC, ASCENDING)) boyutu ile kullandığımızdan, Aggr öğesinin, ayları artan alfabetik sırayla değil, artan sayısal düzende sıralayarak sanal tablodaki ardışık aylardaki müşteri sayılarını karşılaştırdığından emin oluruz.

Örneklerde kullanılan veriler:

Boyut olarak Customer, Product, UnitPrice ve UnitSales öğelerini içeren bir tablo oluşturun. İfadeyi tabloya bir hesaplama olarak ekleyin.

ProductData:

LOAD * inline [

Customer|Product|UnitSales|UnitPrice

Astrida|AA|4|16

Astrida|AA|10|15

Astrida|BB|9|9

Betacab|BB|5|10

Betacab|CC|2|20

Betacab|DD|25|25

Canutility|AA|8|15

Canutility|CC||19

] (delimiter is '|');

Bu sayfa size yardımcı oldu mu?

Bu sayfa veya içeriği ile ilgili bir sorun; bir yazım hatası, eksik bir adım veya teknik bir hata bulursanız, bize bildirin, düzeltelim!

Analiz Modernleştirme Programına katılın

Remove banner from view

Analiz Modernleştirme Programı ile değerli QlikView uygulamalarınızı ödün vermeden modernleştirin. Bize ulaşmak ve daha fazla bilgi almak için buraya tıklayın: ampquestions@qlik.com