Usare la visualizzazione query DAX

Con la vista query DAX in Power BI, è possibile visualizzare e usare query DAX (Data Analysis Expressions) nei modelli semantici.

Query DAX

In Power BI, le formule DAX vengono usate per definire diversi tipi di calcoli per i dati, ma possono essere usate anche per definire la sicurezza dei ruoli. Le query DAX, d'altra parte, possono essere usate per restituire dati dal modello.

Le query DAX sono simili alle query SQL in quanto possono mostrare i dati già presenti. Le query DAX non creano elementi nel modello o negli oggetti visivi del report.

Le query DAX hanno due parti principali:

  • Istruzione CALCOLA, obbligatoria. Specifica cosa e come vengono restituiti i dati nella query.
  • Istruzione DEFINISCI, facoltativa. Consente di definire formule DAX, ad esempio una misura, da usare nella query. Le misure create o aggiornate tramite la query DAX DEFINISCI MISURE sono misure con ambito query DAX, in esecuzione solo nel contesto della query DAX. Le misure con ambito query DAX possono essere aggiunte al modello usando le azioni del modello di aggiornamento CodeLens o il pulsante Aggiorna modello con delle modifiche.

Per altre informazioni sull'uso delle query, vedere Query DAX nel riferimento a DAX.

Aprire la vista query DAX

In Power BI Desktop selezionare l'icona Visualizzazione query DAX sul lato sinistro.

Screenshot dell'icona della visualizzazione query DAX in Power BI Desktop.

Nell'area di lavoro del servizio Power BI o del portale di Fabric, scegliere Scrivi query DAX dal menu di scelta rapida.

Nella pagina dei dettagli del modello semantico del servizio Power BI o del portale di Fabric, selezionare Scrivi query DAX nella parte superiore della pagina.

Layout della visualizzazione query DAX

Verrà ora esaminata in dettaglio la visualizzazione query DAX in Power BI Desktop.

Diagramma che mostra il layout della visualizzazione query DAX.

La vista query DAX include questi elementi:

Barra multifunzione

La barra multifunzione della visualizzazione query DAX include azioni comuni usate per la scrittura di query DAX.

Screenshot della barra multifunzione della visualizzazione query DAX.

Esaminiamo più in dettaglio gli elementi della barra multifunzione:

Formatta query

Selezionare il pulsante della barra multifunzione Formatta query oppure usare MAIUSC+ALT+F per formattare la query corrente. Alla query viene applicato un rientro con le schede. Le funzioni DAX vengono modificate in MAIUSCOLO e vengono aggiunte delle righe aggiuntive. La formattazione della query DAX è considerata una procedura consigliata e migliora la leggibilità delle query DAX. La formattazione rientra anche in modo che sia possibile comprimere ed espandere sezioni della query.

Screenshot del pulsante Formatta query.

Commento e annullamento del commento

Selezionare il pulsante della barra multifunzione Commento per aggiungere una doppia barra rovesciata (//) all'inizio della riga in cui si trova il cursore o tutte le righe selezionate. Questo commenta le righe e quando viene eseguita la query DAX, tali righe vengono ignorate.

Selezionare il pulsante della barra multifunzione Rimuovi commento per rimuovere // all'inizio di qualsiasi riga in cui si trova il cursore o tutte le righe selezionate. Non funziona sulle righe in cui viene aggiunta la notazione di commento a più righe.

È anche possibile usare CTRL+/ per alternare il commento e rimuovere il commento.

Screenshot dei pulsanti Comment e Rimuovi commento nella barra multifunzione della visualizzazione query DAX.

Trova e sostituisci

Selezionare il pulsante della barra multifunzione Trova oppure premere CTRL+F per cercare testo nell'editor di query DAX. Trova include delle opzioni per trovare maiuscole e minuscole, trovare una corrispondenza tra parole intere, usare un'espressione regolare e scorrere tutte le corrispondenze per la query corrente. È anche possibile selezionare la freccia di espansione a sinistra della casella Trova per immettere Sostituisci.

Screenshot del pulsante Trova nella barra multifunzione della visualizzazione query DAX.

Selezionare il pulsante Sostituisci sulla barra multifunzione oppure premere CTRL+H per cercare e sostituire il testo nell'editor di query DAX. Sostituisci include opzioni per mantenere il caso e sostituire uno alla volta o tutti contemporaneamente.

Screenshot della funzionalità Sostituisci nella barra multifunzione della visualizzazione query DAX.

Riquadro comandi

Selezionare il pulsante della barra multifunzione del Riquadro comandi oppure premere CTRL+ALT+P per aprire la casella del riquadro comandi. È possibile cercare altre azioni dell'editor di query DAX e visualizzare i tasti di scelta rapida associati.

Screenshot del riquadro comandi della visualizzazione query DAX.

Barra dei comandi

La barra dei comandi della vista query DAX include le azioni più importanti quando si usa la visualizzazione query DAX.

Esecuzione e annullamento

Il pulsante Esegui esegue la query DAX o le righe selezionate di una query. Lo stato di una query dopo l'esecuzione viene visualizzato nella barra di stato inferiore.

Screenshot della barra dei comandi della visualizzazione query DAX.

Quando una query è in esecuzione, il pulsante diventa un pulsante Annulla, che può essere usato per arrestare una query in esecuzione.

Screenshot dell'annullamento della visualizzazione query DAX.

Aggiornare il modello con le modifiche

Il pulsante Aggiorna modello con modifiche aggiunge o sovrascrive le misure del modello con le formule DAX dalle misure con ambito query DAX. Le misure con ambito query DAX sono quelle nel blocco DEFINISCI MISURA. In alternativa, è possibile scegliere di aggiungere o sovrascrivere le misure del modello singolarmente usando il testo CodeLens visualizzato sopra ciascuno di essi.

Editor di query DAX

La vista query DAX include un editor di query in cui è possibile scrivere e modificare query. È più che una barra della formula DAX più grande. È più potente e presenta molte analogie con l'editor DAX disponibile in VS Code.

L'editor di query DAX include gli elementi seguenti:

Suggerimenti e IntelliSense

Digitare la query e ottenere assistenza con i suggerimenti e IntelliSense durante la modifica.

Screenshot dell'editor di query DAX intelliSense.

Usare INVIO o TAB per aggiungere intellisense evidenziato oppure MAIUSC+INVIO o ALT+INVIO per passare a un'altra riga senza aggiungere l'opzione intellisense. Se si seleziona ESC, viene chiusa una delle sovrimpressioni.

Passare il puntatore del mouse per visualizzare le formule delle misure

Quando una misura è inclusa nella query DAX, è possibile passare il puntatore del mouse su di essa per visualizzare la formula, il nome e la descrizione.

Screenshot del passaggio del mouse per visualizzare la funzionalità della formula della misura.

Selezionare questa opzione per visualizzare le azioni rapide della lampadina

Se si seleziona una misura in un'istruzione CALCOLA in una query senza un'istruzione DEFINISCI, viene visualizzata la lampadina delle azioni rapide. Selezionare Definisci o Definisci con riferimenti per creare un'istruzione DEFINISCI con la formula di questa misura con o senza le formule DAX della misura di riferimento.

Aggiornare le misure del modello usando CodeLens

L'uso di DEFINISCI MISURA è utile quando si creano delle misure consentendo prima di tutto di crearle come misure con ambito query DAX. È possibile modificare più misure in una finestra e quindi eseguire la query per visualizzare i risultati di tutti o solo alcuni di essi con colonne specifiche raggruppate in base a colonne. Non è necessario creare un oggetto visivo tabella nella visualizzazione Report e passare da una formula all'altra. CodeLens esegue ulteriormente questo passaggio fornendo richieste quando la misura esiste già nel modello o, in caso contrario, può aggiungerla.

CodeLens è il testo selezionabile che mostra sopra un blocco DEFINISCI MISURA. Per le misure con ambito query DAX che non sono già presenti nel modello, viene visualizzato il modello di aggiornamento: aggiungere una nuova misura CodeLens, che aggiungerà la misura del modello quando ci si fa clic sopra. Per le misure con ambito query DAX già presenti nel modello e quando la formula DAX con ambito DAX è diversa, viene visualizzato il modello di aggiornamento: sovrascrivere la misura CodeLens, che modificherà la misura del modello in questa formula DAX quando ci si fa clic sopra.

In alternativa, è possibile aggiungere o sovrascrivere più misure contemporaneamente facendo clic sul pulsante Aggiorna modello con modifiche nella barra dei comandi.

Misurare il flusso di lavoro di aggiornamento

Le azioni rapide a lampadina e CodeLens possono essere usate insieme in un flusso di lavoro completo:

  1. Nel menu di scelta rapida di una misura scegliere Query rapide, quindi Valuta per creare la query in una nuova scheda Query.
  2. Selezionare la misura nella query per definire o definire con riferimenti, aggiungendo l'istruzione DEFINISCI.
  3. Apportare aggiornamenti delle espressioni alla misura, quindi eseguire la query DAX per visualizzare la modifica.
  4. Quando la modifica viene visualizzata come previsto, usare la misura CodeLens Update: Sovrascrivere per salvarla di nuovo nel modello.

Ecco un modo più visivo per comprendere il flusso di lavoro:

Diagramma del flusso di lavoro.

Griglia risultati

Quando viene eseguita una query, i risultati vengono visualizzati nella griglia Risultati.

Screenshot della griglia dei risultati.

Se nell'editor di query sono presenti più istruzioni CALCOLA, è possibile restituire più risultati. È possibile usare l'elenco a discesa Risultato per spostarsi tra di essi. Il pulsante Copia copia l'intera griglia come tabella delimitata da tabulazioni con intestazioni. La griglia può essere ridimensionata usando le frecce dell'angolo superiore destro o manualmente con il cursore sul bordo tra la griglia dei risultati e l'editor di query.

Se la query genera un errore, viene visualizzata la griglia dei risultati.

Screenshot del messaggio di errore nella griglia dei risultati.

Un pulsante di copia trasferisce l'errore negli Appunti. L'inizio dell'errore indica dove si trova nella query l'errore. Nell'immagine precedente l'errore è:

"Query (4, 23) Impossibile determinare il valore per 'Sales 2'. La colonna non esiste o non esiste alcuna riga corrente per questa colonna.

E "Query (4, 23)" indica che l'errore è alla riga 4 e al carattere 23.

Schede query

La vista query DAX può avere più schede di query, che possono essere rinominate o rimosse. Mostrano anche lo stato corrente della query.

Screenshot delle schede Query.

Ogni scheda include un indicatore di stato:

  • Non viene visualizzato alcun indicatore prima dell'esecuzione di una query.
  • Un segno di spunta verde indica un'esecuzione di query riuscita.
  • Una croce rossa indica che si è verificato un errore.
  • Un quadrato pieno in un cerchio indica che la query è stata annullata.
  • Un orologio indica che la query è in esecuzione.

Le query possono essere eseguite in background, consentendo di continuare a lavorare su altre schede di query.

Salvataggio di query DAX

Le schede delle query della vista query DAX vengono salvate nel file quando si salva da Power BI Desktop, in modo da poter continuare da dove si era interrotto quando si riapre il file. Se si usa la modalità sviluppatore per salvare un progetto di Power BI, ogni scheda della query viene inclusa come file con estensione DAX nella cartella DAXQueries nella cartella del modello semantico o nella cartella del report, se vengono create in un report connesso in tempo reale. Per altre informazioni, vedere la documentazione relativa alla modalità sviluppatore di power BI.

Attualmente non è possibile visualizzare o modificare le query DAX aggiunte in precedenza in Power BI Desktop nel servizio Power BI. I visualizzatori del report o del modello semantico non visualizzano le query DAX salvate con il modello semantico.

Le schede delle viste query DAX vengono rimosse alla chiusura quando si sceglie Scrivi query DAX dal servizio Power BI o dal portale di Fabric.

Riquadro Dati

Il riquadro Data mostra gli elementi del modello per scrivere query. I percorsi di modifica per la maggior parte di questi elementi sono bloccati nella visualizzazione query.

Query rapide

Il menu di scelta rapida del riquadro dati include query rapide. Usare query rapide per creare query in una nuova scheda query per tabelle, colonne e misure. Le query rapide sono progettate per aumentare la produttività delle attività più comuni e sono costruite in modo da poter essere facilmente modificate. Tutte le query rapide vengono create in una nuova scheda query e vengono eseguite automaticamente.

Ovunque

Definire tutte le misure nel modello crea una query con tutte le formule di misura visualizzate in una query. Cercare facilmente tutte le formule di misura.

Tabelle
  • Mostra le prime 100 righe crea una query usando SELECTCOLUMNS() per visualizzare le prime 100 righe della tabella. Le colonne sono elencate in ogni riga per consentire una modifica semplice impostando come commento le righe. È incluso anche un ORDINA PER per specificare l'ordinamento.

    Screenshot della mostra delle prime 100 righe.

  • Mostra statistiche di colonna crea una query che mostra informazioni statistiche per ogni colonna della tabella. Vedere molte delle formule per informazioni su come aggregare le colonne come MIN, MAX, MEDIA, CONTA.NUMERI e altro ancora.

  • Definire tutte le misure in questa tabella crea una query con le formule di misura di questa tabella visualizzate in una query.

Colonne
  • Mostra anteprima dati crea una query usando DISTINCT() per visualizzare i valori di una colonna.

    Screenshot dell'anteprima dei dati mostra.

  • Mostra statistiche di colonna crea una query che mostra informazioni statistiche per questa colonna specifica. Per informazioni su come aggregare la colonna come MIN, MAX, MEDIA, CONTA.NUMERI e altro ancora, vedere molte formule. La query restituita varia a seconda del tipo di dati della colonna, con statistiche diverse per le colonne numeriche, di testo e di data.

    Screenshot dell'anteprima della colonna mostra.

Misure
  • Calcola crea una query per visualizzare il risultato della misura. SUMMARIZECOLUMNS() viene usato in modo da poter aggiungere in qualsiasi gruppo per colonne per visualizzare la misura in base a gruppi specifici, ad esempio Paese, Prodotto e così via.

    Screenshot della misura di valutazione.

  • Definisci e valuta crea una query per visualizzare il risultato della misura e mostrare la formula della misura in un'istruzione DEFINISCI che può quindi essere modificata.

    Screenshot della misura di definizione e valutazione.

  • Definisci con riferimenti e valuta crea una query per visualizzare il risultato della misura e mostrare non solo la formula della misura in un'istruzione DEFINISCI che può essere modificata, ma anche qualsiasi altra misura a cui si fa riferimento nella formula della misura. Modificare qualsiasi parte nel contesto completo della misura.

    Screenshot della definizione con riferimenti e valutazione.

Recupero di query DAX visive da Analizzatore prestazioni

Gli oggetti visivi nella visualizzazione Report recuperano dati dal modello creando una query DAX. La query visiva può essere visualizzata nella vista query DAX usando Analizzatore prestazioni. Analizzatore prestazioni può fornire informazioni dettagliate sul motivo per cui un oggetto visivo potrebbe mostrare un valore imprevisto o semplicemente come modo per avviare rapidamente una query che è possibile modificare ulteriormente.

In Visualizzazione report passare alla barra multifunzione Ottimizza, quindi selezionare Analizzatore prestazioni. Selezionare Avvia registrazione, quindi Aggiorna oggetti visivi. Nella tabella seguente espandere un oggetto visivo per visualizzare le opzioni per copiare la query o eseguirla nella visualizzazione query DAX. Se si seleziona Esegui nella vista query DAX, la query visiva viene aggiunta come nuova scheda Query nella visualizzazione query DAX e quindi viene eseguita.

Screenshot delle query DAX visive nella funzionalità Analizzatore prestazioni.

Visualizzazione query DAX e connessione dinamica in Power BI Desktop

Power BI Desktop può connettersi in tempo reale a un modello semantico di Power BI pubblicato facendo clic su Connetti quando viene selezionato un modello semantico nell'hub dati OneLake. Nell'angolo inferiore destro della visualizzazione Report verrà visualizzata la connessione dinamica al modello semantico di Power BI. La vista query DAX può essere usata per scrivere query DAX quando è connessa in tempo reale.

Misure del modello

Quando si è connessi in tempo reale a un modello semantico di Power BI pubblicato, non è possibile visualizzare o modificare le misure del modello. Le opzioni Query rapide sono limitate solo a Calcola.

Misure del report

Quando si è connessi in tempo reale a un modello semantico di Power BI pubblicato, è possibile creare misure di report. Le misure del report possono essere create usando l'azione Nuova misura nella visualizzazione Report e Modello, ma, come suggerisce il nome, sono disponibili solo nel report corrente. Dopo la creazione, le query rapide nella visualizzazione query DAX mostrano l'opzione Definisci con riferimenti e valuta. Le query DAX vengono eseguite nel modello semantico, pertanto le misure del report devono essere sempre convertite in misure con ambito query DAX nel blocco DEFINISCI MISURE da eseguire, perché non esistono nel modello stesso.

Il pulsante Aggiorna modello con modifiche e le opzioni CodeLens per Aggiorna il modello non sono disponibili per le misure del report.

Visualizzazione query DAX nel Web

L'opzione Scrivi query DAX da modelli semantici pubblicati usa la visualizzazione query DAX nel Web. La visualizzazione query DAX nel Web è la stessa esperienza in Power BI Desktop, con un paio di eccezioni.

  • L'impostazione dell'area di lavoro Power BI L'utente può modificare i modelli di dati nell'impostazione del servizio di Power BI (anteprima) deve essere abilitata per poter scrivere query DAX. Altre informazioni Modificare i modelli di dati nel servizio Power BI.
  • Le query DAX vengono eliminate alla chiusura. Le query DAX in Power BI Desktop vengono salvate nel modello e un modello semantico potrebbe avere query DAX già salvate nel modello. La visualizzazione query DAX nel Web attualmente non visualizzerà alcuna query DAX salvata in precedenza che potrebbe esistere nel modello semantico e le query create nel Web non vengono mantenute dopo la chiusura del browser.
  • La scrittura di query DAX richiede l'autorizzazione di scrittura per il modello semantico. I visualizzatori dell'area di lavoro devono usare Power BI Desktop con connessione dinamica al modello semantico per scrivere query DAX.

Considerazioni e limitazioni

Considerazioni da tenere presenti:

  • 500+ righe nell'editor di query DAX hanno un ritardo notevole durante la digitazione.
  • Le azioni rapide delle lampadine per le misure vengono visualizzate solo quando nella scheda query non è presente alcuna istruzione DEFINISCI.
  • Il riquadro comandi mostra alcuni comandi che non funzionano ancora.
  • La griglia dei risultati non mostra ancora colonne e misure con il formato specificato, ad esempio Valuta, Numero intero con migliaia e così via.
  • Scaricare questo file dal servizio Power BI non includerà le query DAX salvate nel modello semantico pubblicato.
  • La configurazione dell’integrazione Git iniziale dall’ area di lavoro non includerà le query DAX salvate nel modello semantico pubblicato. Per altre informazioni, vedere Integrazione Git di Fabric.

Esistono alcune limitazioni da tenere presenti:

  • Massimo 15 MB di dati per query. Dopo il superamento di 15 MB, la riga corrente viene completata, ma non vengono scritte righe aggiuntive.
  • Massimo 1.000.000 valori per query. Se si esegue una query per 20 colonne, è possibile ottenere un massimo di 50.000 righe (1 milione diviso per 20).
  • Definire tutte le misure in questa tabella o modello non è disponibile quando sono presenti più di 500 misure.

L'esecuzione di query DAX nel Web include limiti aggiuntivi:

  • Per ogni query vengono restituite al massimo 99.999 righe.
  • Autorizzazione di scrittura per il modello semantico. I visualizzatori con autorizzazione di compilazione possono usare Power BI Desktop per connettersi in tempo reale e usare la visualizzazione query DAX per eseguire query DAX.
  • Disponibile solo per i modelli semantici non predefiniti. È possibile usare Power BI Desktop per connettersi in tempo reale al modello semantico predefinito e usare la visualizzazione query DAX per eseguire query DAX.
  • L'impostazione dell'area di lavoro Power BI L'utente può modificare i modelli di dati nell'impostazione del servizio di Power BI (anteprima) deve essere abilitata per poter scrivere query DAX. Per altre informazioni, vedere Modificare i modelli di dati nella servizio Power BI