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)