Aggr - grafik fonksiyonu
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 işlevi, ilk parametresinin (iç toplama) her boyutsal değer için bir kez hesaplandığı iç içe geçmiş toplamalar için kullanılır. Boyutlar ikinci parametrede (ve sonraki parametrelerde) belirtilir.
Ayrıca Aggr işlevinin sonuç dizisi, içinde bulunduğu toplamaya girdi olarak kullanılarak Aggr işlevi bir dış toplama işlevinin 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:
Bağımsız Değişken | Açıklama |
---|---|
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, bir boyuttan ve isteğe bağlı olarak şu biçimdeki 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. Bu, sıralama düzeni Aggr fonksiyonunun bulunduğu ifadenin sonucunu etkilediğinde önemli olur. Sıralama ölçütlerinin nasıl kullanılacağıyla 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 aggr fonksiyonu, 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 (sanal tablo) oluşturulmasıyla karşılaştırılabilir. Örneğin, ortalama satış değerini hesaplamak için, bir Aggr() deyimi içinde müşteri bazında 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)).
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 biçiminde, 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. Bu şekilde, Aggr fonksiyonu tarafından oluşturulan sanal tabloda bir sıralama düzeni uygularsınız.
StructuredParameter bağımsız değişkeni aşağıdaki söz dizimine sahiptir:
(FieldName, (Sort-type, Ordering))
Yapılandırılmış parametreler iç içe geçebilir:
(FieldName, (FieldName2, (Sort-type, Ordering)))
Sıralama türü şunlar olabilir: NUMERIC, TEXT, FREQUENCY veya LOAD_ORDER.
Her Sıralama türüyle ilişkilendirilen Düzenleme türleri şöyledir:
Sıralama türü | İzin verilen Düzenleme türleri |
---|---|
NUMERIC | ASCENDING, DESCENDING veya REVERSE |
TEXT | ASCENDING, A2Z, DESCENDING, REVERSE veya Z2A |
FREQUENCY | DESCENDING, REVERSE veya ASCENDING |
LOAD_ORDER | ASCENDING, ORIGINAL, DESCENDING veya REVERSE |
REVERSE ve DESCENDING düzenleme türleri eşdeğerdir.
TEXT sıralama türü için ASCENDING ve A2Z düzenleme türleri ile DESCENDING, REVERSE ve Z2A eşdeğerdir.
LOAD_ORDER sıralama türü için ASCENDING ve ORIGINAL düzenleme türleri eşdeğerdir.