QlikWorld 2020 – global konferens. Kom och upptäck hur du utnyttjar dina data på bästa sätt. Agera nu. Registrera dig nu och spara.

Top

Top() utvärderar ett uttryck på den första (översta) raden i ett kolumnsegment i en tabell. Vilken rad som den beräknas för beror på värdet för offset, om sådant finns, standardvärdet är raden högst upp. För diagram som inte är tabeller görs Top()-utvärderingen på den första raden i den aktuella kolumnen i diagrammets raka tabellmotsvarighet.

Syntax:  

Top([TOTAL] expr [ , offset [,count ]])

Return data type: dual

Arguments:  

Argument Beskrivning
expr Det uttryck eller fält som innehåller de data som ska mätas.
offset

Om en startpunkt, offset, på n större än 1 anges flyttas utvärderingen av uttrycket n rader nedanför den översta raden.

Anges ett negativt värde för startpunkten gör det att Top-funktionen fungerar likadant som Bottom-funktionen med motsvarande positivt värde för startpunkten.

count Om du anger en tredje parameter count som är större än 1, returnerar funktionen ett intervall på count värden, ett var för de sista count raderna i det aktuella kolumnsegmentet. I denna form kan funktionen användas som argument i någon av de speciella intervallfunktionerna. Intervallfunktioner
TOTAL

Om tabellen är endimensionell eller om kvalificeraren iTOTAL används som argument, motsvarar det aktuella kolumnsegmentet alltid hela kolumnen.

Definiera aggregeringens omfattning

Observera: Ett kolumnsegment definieras som en konsekutiv underuppsättning med celler som har samma värden för dimensionerna i den aktuella sorteringsordningen. Postöverskridande diagramfunktioner beräknas i kolumnsegmentet exklusive dimensionen längst till höger i motsvarande raka tabelldiagram. Om det enbart finns en dimension i diagrammet, eller om kvalificeraren TOTAL anges, utvärderas uttrycket över en hel tabell.
Observera: Om tabellen eller diagrammets tabellmotsvarighet har flera vertikala dimensioner, inbegriper det aktuella kolumnsegmentet endast rader som har samma värden som den aktuella raden i samtliga dimensionskolumner, utom den kolumn som visar den sista dimensionen i fältens inbördes sorteringsordning.

Limitations:  

Rekursiva anrop returnerar NULL.

Examples and results:  

Example: 1

Customer Sum(Sales) Top(Sum(Sales)) Sum(Sales) + Top(Sum(Sales)) Top offset 3
  2566 587 3153 3249
Astrida 587 587 1174 1270
Betacab 539 587 1126 1222
Canutility 683 587 1270 1366
Divadip 757 587 1344 1440

I återgivningen av det tabelldiagram som visas i det här exemplet skapas tabellen från dimensionen Customer och måtten: Sum(Sales) och Top(Sum(Sales)).

Kolumnen Top(Sum(Sales)) returnerar 587 för alla rader eftersom det är värdet för den översta raden: Astrida

Tabellen visar även mer komplexa mått: ett skapat av Sum(Sales)+Top(Sum(Sales)) och ett med etiketten Top offset 3, som skapas med hjälp av uttrycket Sum(Sales)+Top(Sum(Sales), 3) och vars argument offset är angivet som 3. Det lägger till Sum(Sales)-värdet för den aktuella raden till värdet från raden tre rader nedanför den översta raden, d.v.s. den aktuella raden plus värdet för Canutility.

Example: 2

I de återgivna tabelldiagram som visas i det här exemplet har fler dimensioner lagts till i diagrammen: Month och Product. För diagram med flera dimensioner beror resultatet för uttryck som innehåller funktionerna Above, Below, Top och Bottom på den ordning i vilken kolumndimensionerna sorteras av QlikView. QlikView evaluerar funktionerna baserat på de kolumnsegment som är resultatet från den dimension som kommer sist i sorteringsordningen. Sorteringsordningen för kolumner styrs under Sortera. Den motsvarar inte nödvändigtvis den ordning i vilken kolumnerna visas i en tabell. (En del rader visas inte av utrymmesskäl.)

Customer Product Month Sum(Sales) First value
      2566 -
Astrida AA Jan 46 46
Astrida AA Feb 60 46
Astrida AA Mar 70 46
... ... ... ... ...
Astrida AA Sep 78 46
Astrida AA Oct 12 46
Astrida AA Nov 78 46
Astrida AA Dec 22 46
Astrida BB Jan 46 46
Första tabell för Exempel 2. Värdet för Top för måttet First value baserat på Month (Jan).
Customer Product Month Sum(Sales) First value
      2566 -
Astrida AA Jan 46 46
Astrida BB Jan 46 46
Astrida AA Feb 60 60
Astrida BB Feb 60 60
Astrida AA Mar 70 70
Astrida BB Mar 70 70
Astrida AA Apr 13 13
Astrida BB Apr 13 13
Andra tabell för Exempel 2. Värdet för Top för måttet First value baserat på Product (AA för Astrida).

Se exemplet: 2 i Above-funktionen för ytterligare information.

Example: 3

Resultat

Funktionen Top kan användas som indata för intervallfunktionerna. Exempelvis: RangeAvg (Top(Sum(Sales),1,3)).

I argumenten för Top()-funktionen är offset inställt på 1 och count är inställt på 3. Funktionen hittar resultateten för uttrycket Sum(Sales) på de tre raderna som börjar med raden under den nedersta raden i kolumnsegmentet (eftersom offset=1), och två rader under den (där det finns en rad). De här tre värdena används som indata för funktionen RangeAvg() som räknar ut medelvärdet för ett angivet talintervall.

En tabell med Customer som dimension ger följande resultat för uttrycket RangeAvg().

 
Astrida
Betacab
Canutility
Divadip:
603
603
603
603

Monthnames:

LOAD * INLINE [

Month, Monthnumber

Jan, 1

Feb, 2

Mar, 3

Apr, 4

May, 5

Jun, 6

Jul, 7

Aug, 8

Sep, 9

Oct, 10

Nov, 11

Dec, 12

];

Sales2013:

crosstable (Month, Sales) LOAD * inline [

Customer|Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec

Astrida|46|60|70|13|78|20|45|65|78|12|78|22

Betacab|65|56|22|79|12|56|45|24|32|78|55|15

Canutility|77|68|34|91|24|68|57|36|44|90|67|27

Divadip|57|36|44|90|67|27|57|68|47|90|80|94

] (delimiter is '|');

För att få månaderna att sorteras i korrekt ordning när du skapar dina diagram går du till fliken Sort under diagramegenskaperna och markerar kryssrutan Expression under Sort by. Skriv Monthnumber i uttrycksrutan.

Hjälpte den här informationen?

Tack för att du berättar det här. Är det något du vill säga om det här avsnittet?

Varför var informationen inte till hjälp och hur kan vi förbättra den?