Il generatore di interrogazioni viene usato negli strumenti Trova per attributi e posizione e Filtra per attributi per creare le espressioni che soddisfano i criteri specificati.
Creazione di un'interrogazione
Per creare un'interrogazione, fare clic su Crea nuova interrogazione nel riquadro dello strumento o nella finestra di dialogo dello strumento.
Per iniziare, selezionare il layer da cui trovare le feature. Per Trova in base ad attributi e posizione, l'operazione può essere eseguita nel generatore di query. Per Filtra in base agli attributi, il parametro dei dati di input deve essere inserito prima di poter generare l'interrogazione.
Successivamente, scegliere se iniziare con un'espressione attributo, un'espressione parziale (Trova solo in base ad attributi e posizione) oppure un gruppo di espressioni.
Se l'interrogazione dispone di più di un'espressione, è necessario scegliere una delle seguenti opzioni di corrispondenza per connettere le espressioni:
- Tutte le seguenti sono vere (impostazione predefinita): vengono restituite solo le feature che corrispondono a tutte le espressioni. Questa opzione è equivalente a una clausola AND.
- Una delle seguenti è vera: vengono restituite le feature che corrispondono a una delle espressioni. Questa opzione è equivalente a una clausola OR.
Espressioni di attributi
Ogni interrogazione attributo comprende un nome di campo, un operatore e un valore.
Per esempio, è possibile creare un'interrogazione su un layer contenente dati sugli incidenti criminali della città (furti, incendi dolosi, aggressioni e così via) per mostrare solo i casi di furto. Creare un'espressione di attributo come segue:
- Per il nome del campo, scegliere Tipo di crimine.
- Per l'operatore, scegliere equivale.
- Per il valore, scrivere o selezionare Furto.
Nota:
I campi con valori null verranno esclusi da tutti i risultati delle interrogazioni, tranne quando come operatore viene scelto è vuoto.
Nella maggior parte dei casi, il generatore di interrogazioni include un elenco di valori campo disponibili per facilitare la creazione di un'espressione precisa. L'elenco non è disponibile per Filtra in base agli attributi se il dataset di input è un output di un altro strumento. È necessario digitare il valore esatto nella casella di input invece di scegliere il valore da un elenco.
Espressioni spaziali
Ogni espressione spaziale comprende un operatore e un secondo layer. Sotto il secondo layer, è possibile utilizzare il pulsante + Espressione per aggiungere un'espressione per affinare ulteriormente le feature del secondo layer che saranno utilizzate nell'espressione spaziale originale.
Ad esempio, con un altro layer che rappresenta i panifici, è possibile affinare ulteriormente l'interrogazione attributo per cercare i furti avvenuti entro 100 metri da un panificio. Aggiungere un'espressione spaziale, come segue:
- Per l'operatore, scegliere Entro una distanza di e inserire 100 m.
- Per il layer, selezionare il layer dei panifici.
- Fare clic sul pulsante + Espressione e scegliere Espressione di attributo.
- Nel gruppo di istruzioni Luogo, scegliere Tipo negozio per il nome campo, lasciare l'operatore su equivale e scrivere o selezionare Panifici come valore.
Gruppo di espressioni
Per creare un'interrogazione più complessa, è possibile utilizzare gruppi di espressione per raggruppare espressioni multiple. Il modo in cui si raggruppano le espressioni determina cosa stai trovando. È possibile creare fino a tre livelli di raggruppamento.
Ad esempio, è possibile utilizzare i gruppi di espressione per affinare ulteriormente il filtro degli incidenti di criminalità descritto in precedenza. Per mostrare sia gli incendi dolosi sia i casi di furto segnalati entro una distanza di 100 metri da un negozio di donut, è possibile creare un gruppo di espressioni per trovare gli incendi dolosi o i casi di furto. All'interno di quel gruppo usa l'opzione Uno dei seguenti è vero. Successivamente, al di fuori del gruppo, aggiungere un'espressione spaziale per trovare le feature in un raggio di 100 metri dai panifici.
Operatori
Trova per attributi e posizione usa operatori per interrogazioni spaziali e attributo mentre Filtra in base agli attributi usa operatori solo per interrogazioni attributo.
Operatori attributo
Esistono diversi operatori che è possibile utilizzare per un'interrogazione di attributo, a seconda che il campo che si sta interrogando sia un tipo categoria o numerico.
Se il campo è una stringa, è possibile usare i seguenti operatori:
- equivale: stringhe che corrispondono al testo specificato.
- non equivale: stringhe che non corrispondono a testo specificato.
- è un membro di: stringhe che corrispondono a uno dei valori di testo specificati.
- non è un membro di: stringhe che non corrispondono a uno dei valori di testo specificati.
- contiene: stringhe che hanno il testo fornito.
- non contiene: stringhe che non hanno il testo fornito.
- inizia con: stringhe che iniziano con il testo specificato.
- non inizia con: stringhe che non iniziano con il testo specificato.
- termina con: stringhe che terminano con il testo specificato.
- non termina con: stringhe che non terminano con il testo specificato.
- è vuoto: stringhe che non hanno testo e non sono null.
- non è vuoto: stringhe che hanno del testo e non sono null.
- è una stringa vuota: stringhe che sono null o non hanno testo.
- non è una stringa vuota: stringhe che hanno del testo o sono null.
Se il campo è numerico, è possibile usare i seguenti operatori:
- è tra: numeri che sono tra i due valori specificati. Nei risultati sono inclusi i valori limite.
- non è tra: numeri che non sono tra i due valori specificati. Nei risultati non sono inclusi tra i valori limite.
- equivale: numeri che corrispondono al valore specificato.
- non equivale: numeri che non corrispondono al valore specificato.
- è un membro di: numeri che corrispondono a uno dei valori specificati.
- non è un membro di: numeri che non corrispondono a uno dei valori specificati.
- è superiore a: numeri che sono superiori al valore specificato.
- è almeno: numeri che sono pari o superiori al valore specificato.
- è inferiore a: numeri che sono inferiori al valore specificato.
- è al massimo: numeri che sono inferiori o pari al valore specificato.
- è vuoto: numeri che corrispondono al valore specificato.
- non è vuoto: numeri che hanno lo stesso valore.
Se il campo è una data, è possibile usare i seguenti operatori:
- è tra: date che sono tra due date specificate. Nei risultati sono inclusi i valori limite.
- non è tra: date che non sono tra due date specificate. Nei risultati non sono inclusi tra i valori limite.
- è il: date che sono le stesse dalla data specificata.
- non è il: date che non sono le stesse dalla data specificata.
- è prima: date che sono antecedenti a una data specificata.
- è dopo: date che sono successive a una data specificata.
- è vuoto: date che sono null.
- non è vuoto: date che non sono null.
Operatori spaziali
Espressioni spaziali sono create specificando operatori come completamente all'interno o interseca.
È possibile usare i seguenti operatori spaziali in un'interrogazione spaziale:
- Interseca: se una feature nel primo layer interseca una feature nel secondo layer, quella nel primo layer viene inclusa nell'output.
- Non interseca: se una feature nel primo layer interseca una feature nel secondo layer, quella nel primo layer viene esclusa dall'output.
- Entro una distanza di: una feature del primo layer viene selezionata (inclusa nell'output) se una parte qualsiasi si trova entro la distanza specificata di una feature del secondo layer; ad esempio, le particelle entro 100 metri da un fiume verranno incluse nell'output.
- Non entro una distanza di: una feature del primo layer viene esclusa (non inclusa nell'output) se si trova entro una distanza da un'altra feature; ad esempio, le particelle entro 100 metri da un fiume non verranno incluse nell'output. Si può pensare a questa relazione come se la caratteristica fosse più lontana della distanza specificata.
- Contiene completamente: se una feature nel primo layer contiene completamente una feature nel secondo layer, quella nel primo layer viene inclusa nell'output.
- Non contiene completamente: se una feature nel primo layer contiene completamente una feature nel secondo layer, quella nel primo layer viene esclusa dall'output.
- Completamente all'interno di: se una feature nel primo layer si trova completamente all'interno di una feature nel secondo layer, quella nel primo layer viene inclusa nell'output.
- Non completamente all'interno: se una feature nel primo layer si trova completamente all'interno di una feature nel secondo layer, quella nel primo layer viene esclusa dall'output.
- Più vicino a: se una feature nel primo layer è più vicina ad una feature nel secondo layer, quella nel primo layer viene inclusa nell'output.
Risoluzione dei problemi
Se vengono apportate modifiche a un dataset, un'espressione valida precedente potrebbe diventare non valida. Esempi di modifiche che potrebbero causare un'espressione che diventa non valida includono l'eliminazione o la modifica di un tipo di campo per un campo usato nell'espressione oppure la geometria di un dataset usata in un'espressione spaziale. Le espressioni non valide non verranno visualizzate nel generatore di interrogazioni quando viene riaperto.