Tento článek je o funkci TOPN, která v DAXu umožní získat z tabulky prvních (nebo posledních) N záznamů (pro zobrazení prvních N záznamů přímo ve vizuálu klikněte sem).

Nejprve vyjdeme z této tabulky, která obsahuje celkové tržby podle prodaného zboží.

Pokud bychom chtěli vypsat např. tři druhy zboží, za které se utržilo nejvíce, je možné zapsat tento vzorec:

  • Items with highest revenue = TOPN(
       3; 
       ‘Table’; 
       ‘Table'[Total revenue]; 
       DESC) 
a výsledná tabulka bude vypadat takto:
 
Co kdybychom ale vyšli z této tabulky – tedy z pouhého seznamu prodejů, a chtěli bychom také vypsat první? 
 
Pak si ve výpočtu nejprve vytvoříme tabulku s vysčítanými tržbami podle zboží, a první tři položky vytáhneme z ní:
  • Items with highest revenue (2) = topn(
       3;
       GROUPBY(
          ‘original data’;
          ‘original data'[Goods];
          “Total revenue”;
          SUMX(currentgroup();
          ‘original data'[Revenue]));
       [Total revenue];
       desc)