opérateur in
S’applique à : ✅Microsoft Fabric✅✅
Filtre un jeu d’enregistrements pour les données avec une chaîne sensible à 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") |
Remarque
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 les 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().
Astuces pour les performances
Remarque
Lorsque plus de 128 termes de recherche sont utilisés, l’optimisation de la recherche d’index de texte est désactivée, ce qui peut entraîner une réduction des performances des requêtes.
Remarque
Les performances dépendent du type de recherche et de la structure des données. Pour connaître les meilleures pratiques, consultez les meilleures pratiques relatives aux requêtes.
Syntaxe
Expression T|
where
col ...in
(
,
)
En savoir plus sur les conventions de syntaxe.
Paramètres
Nom | Type | Requise | 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.
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.
let states = dynamic(['FLORIDA', 'ATLANTIC SOUTH', 'GEORGIA']);
StormEvents
| where State in (states)
| count
Sortie
Count |
---|
3218 |
Expression tabulaire
La requête suivante montre comment utiliser in
avec une expression tabulaire.
let Top_5_States =
StormEvents
| summarize count() by State
| top 5 by count_;
StormEvents
| where State in (Top_5_States)
| count
La même requête peut être écrite avec une instruction d’expression tabulaire inline.
StormEvents
| where State in (
StormEvents
| summarize count() by State
| top 5 by count_
)
| count
Sortie
Count |
---|
14242 |
Top avec un autre exemple
L’exemple suivant identifie les cinq premiers états avec des événements éclairs et utilise la fonction iff()
et l’opérateur in
pour classifier les événements éclair par les cinq premiers états, étiquetés par nom d’état, et tous les autres étiquetés comme « Other ».
let Lightning_By_State = materialize(StormEvents
| summarize lightning_events = countif(EventType == 'Lightning') by State);
let Top_5_States = Lightning_By_State | top 5 by lightning_events | project State;
Lightning_By_State
| extend State = iff(State in (Top_5_States), State, "Other")
| summarize sum(lightning_events) by State
Sortie
State | sum_lightning_events |
---|---|
ALABAMA | 29 |
WISCONSIN | 31 |
TEXAS | 55 |
FLORIDE | 85 % |
GEORGIE | 106 |
Other | 415 |
Utiliser une liste statique retournée par une fonction
L’exemple suivant compte les événements de la table StormEvents
en fonction d’une liste prédéfinie d’états intéressants. Les états intéressants sont définis par la fonction InterestingStates()
.
StormEvents
| where State in (InterestingStates())
| count
Sortie
Count |
---|
4775 |
La requête suivante affiche les états considérés comme intéressants par la fonction InterestingStates()
.
.show function InterestingStates
Sortie
Nom | Paramètres | Corps | Dossier | DocString |
---|---|---|---|---|
InterestingStates | () | { dynamic(["WASHINGTON", "FLORIDA", "GEORGIA", "NEW YORK"]) } |