TOP

DAX-Lezione 3. Funzione di selezione dei dati FILTER

Descrizione

In questo articolo esamineremo un'altra funzione importante, chiamata FILTER e utilizzata insieme alla funzione CALCULATE. Questa funzione fa la stessa cosa che facciamo quando proviamo a filtrare i dati nella tabella in base ai valori in una determinata colonna. Cioè, in altre parole, questa funzione riduce la dimensione della tabella con la quale, a sua volta, funzionerà la funzione CALCULATE.

Sintassi della funzione FILTER()

=FILTER(< tavolo >, < filtro >)

< tavolo >

La tabella che vogliamo filtrare. Inoltre, può esserci un'espressione che restituisce una tabella come risultato:

  1. "NomeTabella"
  2. ALL( "NomeTabella" ) o ALL( "NomeTabella" [ Nome della colonna ])
  3. FILTER( "NomeTabella" , "NomeTabella" [ Nome della colonna ] = " Verde ")
  4. VALUES( "NomeTabella" [ Nome della colonna ])

< filtro >

Un'espressione di confronto che viene eseguita per ogni riga della tabella. Ecco le condizioni per la selezione dei valori:

  1. [ Nome della colonna ] = Auto
  2. [ Nome della colonna ] >= 6

Vediamo come appare in pratica. Supponiamo di avere una tabella del genere, che si chiama Demo :

Dobbiamo contare il numero di record per un prodotto Bikes (biciclette) e visualizzare il risultato in una tabella riepilogativa. Per questo, scriveremo la seguente formula:

=CALCULATE(COUNTROWS(Demo); FILTER(Demo; Demo[Product]="Bikes"))

Di conseguenza, otterremo i seguenti valori nel campo Count_All_Product:

Cosa ha fatto la funzione FILTER? Ha ridotto la dimensione della tabella, come facciamo in Excel impostando un filtro nella colonna Product e filtrare solo i record con valori Bikes :

Quindi contò il numero di tutte le righe della tabella ridotta. Vediamo che non ci sono voci nel campo Count_All_Product nelle altre righe, perché non ci sono pattini nella nuova tabella (Skates) e snowboard (Snow Board) .