Operatore in~
Filtra un set di record per i dati con una stringa senza distinzione tra maiuscole e minuscole.
Nella tabella seguente viene fornito un confronto degli in
operatori:
Operatore | Descrizione | Distinzione maiuscole/minuscole | Esempio (restituisce true ) |
---|---|---|---|
in |
È uguale a uno degli elementi | Sì | "abc" in ("123", "345", "abc") |
!in |
Non è uguale a nessuno degli elementi | Sì | "bca" !in ("123", "345", "abc") |
in~ |
Uguale a uno qualsiasi degli elementi | No | "Abc" in~ ("123", "345", "abc") |
!in~ |
Non è uguale a nessuno degli elementi | No | "bCa" !in~ ("123", "345", "ABC") |
Nota
Le matrici annidati vengono appiattite in un singolo elenco di valori. Ad esempio, x in (dynamic([1,[2,3]]))
diventa x in (1,2,3)
.
Per altre informazioni su altri operatori e per determinare quale operatore è più appropriato per la query, vedere Operatori stringa tipo di dati.
Gli operatori senza distinzione tra maiuscole e minuscole sono attualmente supportati solo per il testo ASCII. Per il confronto non ASCII, usare la funzione tolower().
Suggerimenti per le prestazioni
Nota
Le prestazioni dipendono dal tipo di ricerca e dalla struttura dei dati. Per le procedure consigliate, vedere Procedure consigliate per le query.
Quando possibile, usare la distinzione tra maiuscole e minuscole.
Sintassi
T |
where
col (
in~
expression ...,
)
Altre informazioni sulle convenzioni di sintassi.
Parametri
Nome | Digita | Obbligatorio | Descrizione |
---|---|---|---|
T | string |
✔️ | Input tabulare da filtrare. |
col | string |
✔️ | Colonna in base alla quale filtrare. |
expression | scalare o tabulare | ✔️ | Espressione che specifica i valori per cui eseguire la ricerca. Ogni espressione può essere un valore scalare o un'espressione tabulare che produce un set di valori. Se un'espressione tabulare contiene più colonne, viene utilizzata la prima colonna. La ricerca considererà fino a 1.000.000 valori distinti. |
Valori restituiti
Righe in T per cui il predicato è true
.
Esempi
Elenco di scalari
La query seguente illustra come usare in~
con un elenco delimitato da virgole di valori scalari.
StormEvents
| where State in~ ("FLORIDA", "georgia", "NEW YORK")
| count
Output
Conteggio |
---|
4775 |
Matrice dinamica
La query seguente illustra come usare in~
con una matrice dinamica.
StormEvents
| where State in~ (dynamic(["FLORIDA", "georgia", "NEW YORK"]))
| count
Output
Conteggio |
---|
4775 |
La stessa query può essere scritta anche con un'istruzione let.
let states = dynamic(["FLORIDA", "georgia", "NEW YORK"]);
StormEvents
| where State has_any (states)
| summarize count() by State
Output
Conteggio |
---|
4775 |
Espressione tabulare
La query seguente illustra come usare in~
con un'espressione tabulare inline. Si noti che un'espressione tabulare inline deve essere racchiusa tra parentesi doppie.
StormEvents
| where State in~ (PopulationData | where Population > 5000000 | project State)
| summarize count() by State
Output
Provincia | count_ |
---|---|
TEXAS | 4701 |
ILLINOIS | 2022 |
MISSOURI | 2016 |
GEORGIA | 1983 |
MINNESOTA | 1881 |
... | ... |
La stessa query può essere scritta anche con un'istruzione let. Si noti che le doppie parentesi fornite nell'ultimo esempio non sono necessarie in questo caso.
let large_states = PopulationData | where Population > 5000000 | project State;
StormEvents
| where State in~ (large_states)
| summarize count() by State
Output
Provincia | count_ |
---|---|
TEXAS | 4701 |
ILLINOIS | 2022 |
MISSOURI | 2016 |
GEORGIA | 1983 |
MINNESOTA | 1881 |
... | ... |
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per