FirstSortedValue

FirstSortedValue(), belirtilmesi halinde rank öğesinin de hesaba katılmasıyla, sort_weight bağımsız değişkeninin sonucuna karşılık gelen value içinde belirtilen ifadeden değeri döndürür. 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: dual

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 ifadesinin 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 de, geçerli seçimlerde verilen tüm olası değerler üzerinden yapılır; yani grafik boyutlarını göz ardı eder.

TOTAL niteleyicisinin ardından açılı ayraçlar içindeki bir veya daha fazla alan adından oluşan bir liste gelebilir <fld>. Bu alan adları grafik boyut değişkenlerinin bir alt kümesi olmalıdır.

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 '|');