I filtri avanzati sono filtri basati su espressioni che possono essere utilizzati per creare un filtro personalizzato a livello di dataset o scheda. I filtri avanzati includono l'accesso agli stessi operatori (ad esempio, +, ÷, > e <>) e funzioni come campi calcolati.
Nota:
I filtri avanzati non sono disponibili per alcuni feature layer remoti. Se il feature layer remoto non supporta i filtri avanzati, è possibile copiare il layer nella cartella di lavoro e applicare un filtro avanzato alla copia.
Le espressioni dei filtri avanzati possono apparire errate quando si usano caratteri misti da sinistra a destra e da destra a sinistra nella stessa espressione. Per esempio, un'espressione che usa nomi di campi sia in inglese che in arabo potrebbe non essere visualizzata correttamente. I risultati dell'espressione non sono influenzati dai caratteri misti da sinistra a destra e da destra a sinistra.
I filtri avanzati possono essere utili in situazioni in cui l'interrogazione è complessa o se alcune informazioni sono sconosciute o devono essere calcolate. Di seguito, sono riportati alcuni esempi di come è possibile utilizzare i filtri avanzati:
- Si dispone di un dataset con le scuole degli Stati Uniti, ma si desidera eseguire analisi sulle scuole nella Contea di Dallas, in Texas. Un filtro regolare per la Contea di Dallas riporta le scuole in Alabama, Iowa e Texas. Un filtro avanzato che utilizza l'espressione County="Dallas" AND State="Texas" filtra il dataset, in modo che vengano riportate solo le scuole della Contea di Dallas, in Texas.
- Si dispone di un dataset con posizioni, entrate e spese del negozio, ma si desidera vedere solo i negozi in perdita. Un filtro avanzato che utilizza l'espressione Revenue<Expenses filtra il dataset in modo che vengano riportati solo i negozi con entrate inferiori alle spese.
- Si dispone di un dataset con posizione, date di ispezione e stato delle ispezioni degli idranti nel corso di vari anni, ma si desidera visualizzare soltanto le ispezioni eseguite sugli idranti danneggiati a partire dal 2018. Un filtro avanzato che utilizza l'espressione InspectionDate>=DATE(2018,01,01)AND Status="Damaged" filtrerebbe il dataset in modo da mostrare soltanto le valutazioni dei danni avvenute dopo il 1° gennaio 2018.
Nota:
Deve essere usata una funzione data, come , DATE() o DATEVALUE()NOW(), nell'espressione di un filtro avanzato utilizzando il campo data/ora . Una data inserita come valore stringa (ad esempio, "01/01/2018" per il 1° gennaio 2018) non sarà letta come un valore data e non restituirà alcun risultato.
Applicare un filtro avanzato al livello desiderato
Attenersi alla seguente procedura per applicare un filtro avanzato a livello di dataset:
- Trovare il dataset a cui applicare il filtro nel riquadro dati.
- Fare clic sul pulsante Opzioni dataset accanto al dataset.
- Nel menu Opzioni dataset, fare clic su Filtro avanzato.
- Fare clic nella casella Espressione filtro personalizzato per visualizzare i campi e le funzioni disponibili e iniziare a scrivere l'espressione.
- Nella parte inferiore della casella Espressione filtro personalizzato, cercare il segno di spunta verde per indicare che l'espressione è valida.
Nota:
L'espressione deve includere un operatore condizionale, quale <, = o <>, per essere valida per il filtro (ad esempio, Revenue-Expenses>100000).
- Fare clic su Applica.
L'espressione viene applicata all'intero dataset. Tutte le schede create utilizzando il dataset vengono aggiornate.
Applicare un filtro avanzato al livello di scheda
Attenersi alla seguente procedura per applicare un filtro avanzato a livello di scheda:
- Creare una mappa, un grafico o una tabella utilizzando il dataset da filtrare
- Fare clic sul pulsante Filtro scheda nella barra degli strumenti della scheda.
- Nel riquadro Nuovo filtro, fare clic su Avanzato.
- Fare clic nella casella Espressione filtro personalizzato per visualizzare i campi e le funzioni disponibili e iniziare a scrivere l'espressione.
- Nella parte inferiore della casella Espressione filtro personalizzato, cercare il segno di spunta verde per indicare che l'espressione è valida.
Nota:
L'espressione deve includere un operatore condizionale, quale <, = o <>, per essere valida per il filtro (ad esempio, Revenue-Expenses>100000).
- Fare clic su Applica.
L'espressione viene applicata solo alla scheda da filtrare. Le altre schede che utilizzano lo stesso dataset non vengono aggiornate.
Nota:
Il pulsante Filtro scheda visualizza il numero di filtri nella scheda, includendo i filtri avanzati. Quando viene creato un filtro scheda avanzato, viene aggiunto un dataset di risultati al riquadro dei dati con lo stesso filtro applicato al livello di dataset. Se vengono create nuove schede utilizzando il dataset di risultati, tutte le schede faranno riferimento al filtro dataset nel dataset di risultati e il filtro scheda viene rimosso dalla scheda originale. Poiché la scheda originale fa riferimento anche al dataset di risultati, i dati visualizzati non saranno soggetti ad alcun cambiamento.
Rimuovere o aggiornare un filtro avanzato
Attenersi alla seguente procedura per aggiornare un filtro dataset avanzato:
- Fare clic sul pulsante Opzioni dataset per il dataset che fa un filtro avanzato applicato.
- Fare clic su Filtro avanzato nel menu delle opzioni del dataset.
- Effettuare una delle seguenti operazioni:
- Modificare l'espressione del filtro e fare clic su Applica per aggiornare il filtro.
- Fare clic sul pulsante Rimuovi filtro per rimuovere il filtro.
Attenersi alla seguente procedura per aggiornare un filtro scheda avanzato:
- Fare clic sul pulsante attivo Filtro scheda.
- Fare clic sul filtro da aggiornare.
- Effettuare una delle seguenti operazioni:
- Modificare i valori del filtro e fare clic su Applica per aggiornare il filtro.
- Fare clic sul pulsante Rimuovi filtro per rimuovere il filtro.
Esempi di espressioni
La tabella seguente fornisce esempi dei tipi di espressioni che possono essere utilizzate nei filtri avanzati:
Espressione | Descrizione |
---|---|
DATEDIF(date_field, NOW(), "D")<=28 | Filtra i dati alle voci degli ultimi 28 giorni. |
number_field>AVG(number_field) | Filtra i dati nelle righe dove il valore di number_field è maggiore della media. |
number_field_1>number_field_2 | Filtra i dati nelle righe dove il valore di number_field_1 è maggiore del valore di number_field_2. |
number_field<10 OR number_field>20 | Filtra i dati in modo che i valori medi (in questo caso, numeri compresi tra 10 e 20) non siano inclusi |
string_field IS NOT NULL | Filtra i dati per includere solo le righe in cui il campo contiene valori non nulli. |