FirstSortedValue - grafik fonksiyonu

FirstSortedValue(); en düşük birim fiyatına sahip ürünün adı gibi sort_weight bağımsız değişkeninin sıralamasının sonucuna karşılık gelen value içinde belirtilmiş ifadedeki değeri döndürür. Sıralama düzenindeki n. değer rank içinde belirtilebilir. Birden fazla sonuç değeri, belirtilen rank için aynı sort_weight öğesini paylaşıyorsa fonksiyon NULL döndürür.

Syntax:  

FirstSortedValue([{SetExpression}] [DISTINCT] [TOTAL [<fld {,fld}>]] value, sort_weight [,rank])

Return data type: ikili

Arguments:  

Bağımsız Değişken Açıklama
value Çıkış alanı. Fonksiyon, sort_weight sıralamasının sonucuna karşılık gelen value ifadesi değerini bulur.
sort_weight

Giriş alanı. Sıralanacak verileri içeren ifade. İlk (en düşük) sort_weight değeri bulunur (value ifadesinin karşılık gelen değeri bu değerden belirlenir). sort_weight öğesinin önüne bir eksi işareti koyarsanız, fonksiyon son (en yüksek) sıralanan değeri döndürür.

rank

1'den büyük bir rank "n" belirttiğinizde n. sıralanan değeri alırsınız.

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 Fonksiyon bağımsız değişkenlerinden önce DISTINCT sözcüğü varsa fonksiyon bağımsız değişkenlerinin değerlendirilmesinden kaynaklanan çoğaltmalar göz ardı edilir.
TOTAL

TOTAL sözcüğü, fonksiyon bağımsız değişkenlerinden önce gelirse, hesaplama yalnızca geçerli boyutsal değere ait olanlar için değil, geçerli seçimlerde verilen tüm olası değerler üzerinden yapılır; yani grafik boyutlarını göz ardı eder.

TOTAL niteleyicisinden sonra grafik boyut değişkenlerinin bir alt kümesi olarak bir veya daha çok alan adının geldiği TOTAL [<fld {.fld}>] niteleyicisini kullanarak toplam olası değerlerin bir alt kümesini oluşturursunuz.

Toplama kapsamını tanımlama

Examples and results:  

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
Canutility AA 8 15
Canutility CC - 19
Örnek Sonuç
firstsortedvalue (Product, UnitPrice)

BB; yani, UnitPrice değeri (9) en düşük Product.

firstsortedvalue (Product, UnitPrice, 2)

BB; yani, UnitPrice değeri (10) en düşük ikinci Product.

firstsortedvalue (Customer, -UnitPrice, 2)

Betacab; yani, UnitPrice değeri (20) en yüksek ikinci Product sahibi Customer.

firstsortedvalue (Customer, UnitPrice, 3)

NULL; çünkü aynı rank (en düşük üçüncü) UnitPrice (15) ile iki Customer değeri (Astrida ve Canutility) var.

Beklenmedik null sonuçları oluşmamasını sağlamak için distinct niteleyicisini kullanın.

firstsortedvalue (Customer, -UnitPrice*UnitSales, 2)

Canutility; yani UnitPrice ile UnitSales çarpımı (120) olarak en yüksek ikinci satış emri değerine sahip Customer.

Örneklerde kullanılan veriler:

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

Canutility|AA|8|15

Canutility|CC||19

] (delimiter is '|');