Aggiungere una colonna condizionale
Con Power Query è possibile creare nuove colonne i cui valori sono basati su una o più condizioni applicate ad altre colonne della tabella.
Il comando Colonna condizionale si trova nella scheda Aggiungi colonna nel gruppo Generale .
Aggiunta di una colonna condizionale
In questo esempio si usa la tabella illustrata nell'immagine seguente.
In questa tabella è presente un campo che fornisce il CustomerGroup. Sono inoltre disponibili prezzi diversi applicabili al cliente nei campi Tier 1 Price, Tier 2 Price e Tier 3 Price . In questo esempio l'obiettivo è creare una nuova colonna con il nome Final Price in base al valore trovato nel campo CustomerGroup . Se il valore nel campo CustomerGroup è uguale a 1, si vuole usare il valore del campo Livello 1 Prezzo . In caso contrario, si usa il valore del prezzo di livello 3.
Per aggiungere questa colonna condizionale, selezionare Colonna condizionale. Nella finestra di dialogo Aggiungi colonna condizionale definire le sezioni seguenti:
- Nome nuova colonna: definisce il nome della nuova colonna. In questo esempio usare il nome Final Price.
- Clausole condizionali: definisce le clausole condizionali. È possibile aggiungere altre clausole selezionando Aggiungi clausola. Ogni clausola condizionale viene testata nell'ordine visualizzato nella finestra di dialogo, dall'alto verso il basso. Ogni clausola ha quattro parti:
- Nome colonna: nell'elenco a discesa selezionare la colonna da usare per il test condizionale. Per questo esempio, selezionare CustomerGroup.
- Operatore: selezionare il tipo di test o operatore per il test condizionale. In questo esempio, il valore della colonna CustomerGroup deve essere uguale a 1, quindi selezionare uguale a .
- Valore: immettere un valore o selezionare una colonna da usare per il test condizionale. Per questo esempio, immettere 1.
- Output: se il test è positivo, il valore immesso qui o la colonna selezionata è l'output. Per questo esempio, se il valore di CustomerGroup è uguale a 1, il valore di Output deve essere il valore della colonna Tier 1 Price .
- Clausola Final Else: se nessuna delle clausole precedenti restituisce un test positivo, l'output di questa operazione è quello definito qui, come valore immesso manualmente o come valore di una colonna. In questo caso, l'output è il valore della colonna Tier 3 Price.In this case, the output is the value from the Tier 3 Price column.
Il risultato di questa operazione offre una nuova colonna Final Price contenente i valori delle colonne Tier 1 Price e Tier 3 price.
Nota
Le nuove colonne condizionali non hanno un tipo di dati definito. È possibile aggiungere un nuovo passaggio per definire un tipo di dati per questa colonna appena creata seguendo i passaggi descritti in Tipi di dati in Power Query.
Aggiunta e organizzazione di più clausole
Per questo esempio, è possibile modificare l'obiettivo. Le nuove clausole condizionali sono:
- Se il valore della colonna CustomerGroup è uguale a 1, l'output è il valore della colonna Tier 1 Price.
- Se il valore della colonna CustomerGroup è uguale a 2, l'output è il valore della colonna Tier 2 Price.
- Se nessuno dei test precedenti è positivo, l'output è il valore della colonna Livello 3 Price.
Nota
Alla fine di ogni clausola, è possibile selezionare il pulsante con i puntini di sospensione (...) per eliminare, spostare verso l'alto o spostare verso il basso la clausola.
Il risultato di questa operazione fornisce la colonna Prezzo finale con i prezzi delle colonne Tier 1 Price, Tier 2 Price e Tier 3 price.