in~, opérateur

Filtre un jeu d’enregistrements pour les données dont la chaîne ne respecte pas la casse.

Le tableau suivant fournit une comparaison des in opérateurs :

Opérateur Description Respecte la casse Exemple (génère true)
in Égal à l’un des éléments Oui "abc" in ("123", "345", "abc")
!in N’est égal à aucun des éléments Oui "bca" !in ("123", "345", "abc")
in~ Est égal à l’un des éléments Non "Abc" in~ ("123", "345", "abc")
!in~ N’est égal à aucun des éléments Non "bCa" !in~ ("123", "345", "ABC")

Notes

Les tableaux imbriqués sont aplatis en une seule liste de valeurs. Par exemple, x in (dynamic([1,[2,3]])) devient x in (1,2,3).

Pour plus d’informations sur d’autres opérateurs et pour déterminer l’opérateur le plus approprié pour votre requête, consultez Opérateurs de chaîne de type de données.

Les opérateurs insensibles à la casse sont actuellement pris en charge uniquement pour le texte ASCII. Pour une comparaison non-ASCII, utilisez la fonction tolower().

Conseils sur les performances

Notes

Les performances dépendent du type de recherche et de la structure des données. Pour obtenir les meilleures pratiques, consultez Meilleures pratiques de requête.

Si possible, utilisez le respect de la casse dans.

Syntax

T|wherecolin~(Expression, ... )

Découvrez les conventions de syntaxe.

Paramètres

Nom Type Obligatoire Description
T string ✔️ Entrée tabulaire à filtrer.
col string ✔️ Colonne par laquelle filtrer.
expression scalaire ou tabulaire ✔️ Expression qui spécifie les valeurs pour lesquelles effectuer une recherche. Chaque expression peut être une valeur scalaire ou une expression tabulaire qui produit un ensemble de valeurs. Si une expression tabulaire a plusieurs colonnes, la première colonne est utilisée. La recherche prend en compte jusqu’à 1 000 000 valeurs distinctes.

Retours

Lignes dans T dont le prédicat est défini sur true.

Exemples

Liste des scalaires

La requête suivante montre comment utiliser in~ avec une liste de valeurs scalaires séparées par des virgules.

StormEvents 
| where State in~ ("FLORIDA", "georgia", "NEW YORK") 
| count

Sortie

Count
4775

Tableau dynamique

La requête suivante montre comment utiliser in~ avec un tableau dynamique.

StormEvents 
| where State in~ (dynamic(["FLORIDA", "georgia", "NEW YORK"])) 
| count

Sortie

Count
4775

La même requête peut également être écrite avec une instruction let.

let states = dynamic(["FLORIDA", "georgia", "NEW YORK"]);
StormEvents 
| where State has_any (states)
| summarize count() by State

Sortie

Count
4775

Expression tabulaire

La requête suivante montre comment utiliser in~ avec une expression tabulaire inline. Notez qu’une expression tabulaire inline doit être entourée de parenthèses doubles.

StormEvents 
| where State in~ (PopulationData | where Population > 5000000 | project State)
| summarize count() by State

Sortie

State count_
TEXAS 4701
ILLINOIS 2022
MISSOURI 2016
GEORGIE 1983
MINNESOTA 1881
... ...

La même requête peut également être écrite avec une instruction let. Notez que les parenthèses doubles fournies dans le dernier exemple ne sont pas nécessaires dans ce cas.

let large_states = PopulationData | where Population > 5000000 | project State;
StormEvents 
| where State in~ (large_states)
| summarize count() by State

Sortie

State count_
TEXAS 4701
ILLINOIS 2022
MISSOURI 2016
GEORGIE 1983
MINNESOTA 1881
... ...