VALUES
Quando il parametro di input è un nome di colonna, restituisce una tabella a una colonna contenente i valori distinti della colonna specificata. I valori duplicati vengono rimossi e vengono restituiti solo valori univoci. È possibile aggiungere un valore BLANK. Quando il parametro di input è un nome di tabella, restituisce le righe dalla tabella specificata. Le righe duplicate vengono mantenute. È possibile aggiungere una riga BLANK.
Nota
Questa funzione non può essere utilizzata per restituire valori in una cella o in una colonna di un foglio di lavoro; è invece possibile usarlo come funzione intermedia, annidata in una formula, per ottenere un elenco di valori distinti che possono essere conteggiati o usati per filtrare o sommare altri valori.
Sintassi
VALUES(<TableNameOrColumnName>)
Parametri
Termine | Definizione |
---|---|
TableName o ColumnName |
Colonna da cui devono essere restituiti valori univoci o una tabella da cui devono essere restituite le righe. |
Valore restituito
Quando il parametro di input è un nome di colonna, una tabella a colonna singola. Quando il parametro di input è un nome di tabella, viene restituita una tabella con le stesse colonne.
Osservazioni:
Quando si usa la funzione VALUES in un contesto filtrato, i valori univoci restituiti da VALUES sono interessati dal filtro. Ad esempio, se si filtra in base all'area e si restituisce un elenco dei valori per City, l'elenco includerà solo le città nelle aree consentite dal filtro. Per restituire tutte le città, indipendentemente dai filtri esistenti, è necessario usare la funzione ALL per rimuovere i filtri dalla tabella. Il secondo esempio illustra l'uso di ALL con VALUES.
Questa funzione non è supportata per l'uso in modalità DirectQuery quando viene usata nelle colonne calcolate o nelle regole di sicurezza a livello di riga.
Per le procedure consigliate quando si usa VALUES, vedere Usare SELECTEDVALUE anziché VALUES.
Funzioni correlate
Nella maggior parte degli scenari, quando l'argomento è un nome di colonna, i risultati della funzione VALUES sono identici a quelli della funzione DISTINCT
. Entrambe le funzioni rimuovono i duplicati e restituiscono un elenco dei valori possibili nella colonna specificata. Tuttavia, la funzione VALUES può restituire anche un valore vuoto. Questo valore vuoto è utile nei casi in cui si cercano valori distinti da una tabella correlata, ma manca un valore usato nella relazione da una tabella. Nella terminologia dei database questa condizione è detta violazione dell'integrità referenziale. Tali mancate corrispondenze nei dati possono verificarsi quando una tabella viene aggiornata e la tabella correlata non è.
Quando l'argomento è un nome di tabella, il risultato della funzione VALUES restituisce tutte le righe della tabella specificata più una riga vuota, se si verifica una violazione dell'integrità referenziale. La funzione DISTINCT rimuove le righe duplicate e restituisce righe univoche nella tabella specificata.
Nota
La funzione DISTINCT consente a un nome di colonna o a qualsiasi espressione di tabella valida di essere il relativo argomento, ma la funzione VALUES accetta solo un nome di colonna o un nome di tabella come argomento.
La tabella seguente riepiloga la mancata corrispondenza tra i dati che possono verificarsi in due tabelle correlate quando l'integrità referenziale non viene mantenuta.
Tabella MyOrders | Tabella MySales |
---|---|
June 1 | June 1 sales |
June 2 | June 2 sales |
(non sono state immesse date di ordini) | June 3 sales |
Se si usa la funzione DISTINCT per restituire un elenco di date, verranno restituite solo due date. Tuttavia, se si usa la funzione VALUES, la funzione restituisce le due date più un membro vuoto aggiuntivo. Inoltre, qualsiasi riga della tabella MySales che non dispone di una data corrispondente nella tabella MyOrders verrà "abbinata" a questo membro sconosciuto.
Esempio
La formula seguente conta il numero di fatture univoche (ordini di vendita) e produce i risultati seguenti se usati in un report che include i nomi delle categorie di prodotti:
= COUNTROWS(VALUES('InternetSales_USD'[SalesOrderNumber]))
Resi
Etichette di riga | Conteggio fatture |
---|---|
Accessori | 18,208 |
Bikes | 15,205 |
Clothing | 7,461 |
Grand Total | 27,659 |