Filtro in LuckyTemplates: transizione del contesto delle query DAX

Filtro in LuckyTemplates: transizione del contesto delle query DAX

Questo post illustrerà come identificare un filtro tramite xmSQL e la query del motore di archiviazione in LuckyTemplates. Imparerai anche cosa sta facendo VertiPaq quando filtri in base alla portata. Questo è un argomento importante perché la cardinalità di ciò che viene applicato nei filtri è la più grande forza trainante delle prestazioni di DAX.

La query xmSQL è un linguaggio quasi sequel che ha le clausole SELECT , FROM e WHERE . La clausola WHERE è il tuo filtro, che viene introdotto quando usi la funzione o . I filtri esistono sia nel piano di query logico che nel piano di query del motore di archiviazione.

Sommario

Filtra la transizione del contesto

Questa query di esempio ha la funzione con Total Sales e la funzione su Fact Sales. Il Fatto Vendite sta moltiplicando il Prezzo Attuale e la Quantità di Vendita. Per questo esempio, devi solo concentrarti sulle vendite superiori a 300.

Filtro in LuckyTemplates: transizione del contesto delle query DAX

L'esecuzione della query ti darà un risultato di una tabella di una riga che non è molto utile.

Filtro in LuckyTemplates: transizione del contesto delle query DAX

Tuttavia, se vai alla scheda Server Timings ed esegui la scansione, puoi vedere l'istruzione xmSQL che ti fornisce informazioni su cosa sta facendo la tua query.

Filtro in LuckyTemplates: transizione del contesto delle query DAX

La clausola WITH con $Expr0 significa che viene calcolata un'espressione matematica. Successivamente, l'espressione viene selezionata dalla tabella dei dati di vendita o dalla tabella delle vendite dei fatti e quindi filtrata nella clausola WHERE con le condizioni impostate.

Nel piano di query fisico è possibile vedere l' operatore Filter_Vertipaq . Significa che la query viene inviata al motore di archiviazione. Per quanto possibile, utilizzare il motore di archiviazione come filtro per ottenere prestazioni DAX più rapide.

Filtro in LuckyTemplates: transizione del contesto delle query DAX

Questa è un'altra query di esempio che utilizza SUMX invece della funzione CALCULATETABLE . Se esegui la query e guardi l'istruzione xmSQL, puoi vedere lo stesso risultato, scansione e piani di query.

Filtro in LuckyTemplates: transizione del contesto delle query DAX

È possibile utilizzare la funzione SUMX o CALCULATETABLE per generare risultati. Ma SUMX a volte può essere più lento di CALCULATETABLE . È meglio utilizzare quest'ultimo per ottenere prestazioni DAX più fluide.

Filtra sull'intervallo in LuckyTemplates

Questa è una query di esempio che filtra su un intervallo. La condizione di filtro ottiene i dati di vendita se il prezzo corrente è maggiore o uguale a 300 ma minore di 1000.

Filtro in LuckyTemplates: transizione del contesto delle query DAX

Se esegui la query e guardi l'istruzione xmSQL, puoi vedere un intervallo nella clausola WHERE .

Filtro in LuckyTemplates: transizione del contesto delle query DAX

Se guardi il piano di query fisico, puoi vedere 2 Filter_Vertipaq . Questo perché il filtro ha un intervallo compreso tra 300 e 1000. Ciò significa anche che il motore di archiviazione sta lavorando alla query e al calcolo.

Filtro in LuckyTemplates: transizione del contesto delle query DAX

Ecco un'altra query con valori multipli che utilizza la clausola OR , che è indicata da “ || ”.  

Filtro in LuckyTemplates: transizione del contesto delle query DAX

Dopo aver eseguito la query, puoi vedere le modifiche nella clausola WHERE all'interno dell'istruzione xmSQL. xmSQL ha convertito l' istruzione OR in un'istruzione IN .

Filtro in LuckyTemplates: transizione del contesto delle query DAX

Se usi IN nella query, produrrà la stessa istruzione e risultati xmSQL. Ricorda che quando usi IN , deve essere una tabella indicata da parentesi graffe.

Filtro in LuckyTemplates: transizione del contesto delle query DAX

Ma l'utilizzo di una clausola OR o IN non ha importanza perché quando il motore di archiviazione lo legge, sa che ha la stessa istruzione xmSQL. Ecco perché sta dando lo stesso risultato di $ 939.012.

Filtro in LuckyTemplates: transizione del contesto delle query DAX


Introduzione al contesto dei filtri in LuckyTemplates
Esercitazione su DAX: contesto e motore di calcolo
Come utilizzare i filtri semplici in LuckyTemplates

Conclusione

In questo post di blog si è appreso come configurare una condizione di filtro nel DAX in LuckyTemplates . I filtri definiscono quali risultati possono essere generati dalla query DAX in LuckyTemplates. Sono entità importanti che devono essere stabilite per invocare transizioni di contesto. Se si desidera ottenere risultati specifici da periodi o intervalli di tempo diversi, è necessario introdurre nella query il contesto del filtro.

Nick


Power Automate si applica a ogni azione nei flussi di lavoro

Power Automate si applica a ogni azione nei flussi di lavoro

Scopri l

Tecniche di modellazione dei dati per organizzare le misure DAX

Tecniche di modellazione dei dati per organizzare le misure DAX

Tecniche di modellazione dei dati per organizzare meglio le misure DAX per un flusso di lavoro più efficiente.

Filtro Power Apps: cosè e come si usa?

Filtro Power Apps: cosè e come si usa?

Scopri come utilizzare la funzione di filtro in Power Apps e come incorporarla nelle formule esistenti all

Come commentare più righe in Python: una guida semplice e veloce

Come commentare più righe in Python: una guida semplice e veloce

Come commentare più righe in Python: una guida semplice e veloce

Connettori Power Automate: numero, testo e data e ora

Connettori Power Automate: numero, testo e data e ora

Acquisisci familiarità con i connettori Power Automate per la manipolazione di numeri, testo e date/ore.

Budget Vs Actual Vs Last Year - Suggerimenti per la rendicontazione finanziaria

Budget Vs Actual Vs Last Year - Suggerimenti per la rendicontazione finanziaria

Ora, è molto facile studiare il budget rispetto all

Come salvare e caricare un file RDS in R

Come salvare e caricare un file RDS in R

Imparerai come salvare e caricare oggetti da un file .rds in R. Questo articolo tratta anche come importare oggetti da R a LuckyTemplates.

Che cosè Power Query e M Language: una panoramica dettagliata

Che cosè Power Query e M Language: una panoramica dettagliata

Scopri tutto su Power Query e il linguaggio M per la trasformazione e la preparazione dei dati nel desktop di LuckyTemplates.

Cosè il sé in Python: esempi del mondo reale

Cosè il sé in Python: esempi del mondo reale

Cos'è il sé in Python: esempi del mondo reale

Rivisitazione dei primi N giorni lavorativi: una soluzione per il linguaggio di codifica DAX

Rivisitazione dei primi N giorni lavorativi: una soluzione per il linguaggio di codifica DAX

In questa esercitazione sul linguaggio di codifica DAX, scopri come usare la funzione GENERATE e come modificare dinamicamente il titolo di una misura.