Utiliser la fonction QUERY comme alternative à la fonction FILTER dans Google Sheets

J’ai récemment utilisé la fonction QUERY impressionnante pour remplir automatiquement des informations en fonction d’une sélection dans une liste déroulante. En y regardant de plus près, vous pouvez constater à quel point il est facile d’extraire des informations essentielles à partir d’une base de données complète à l’aide de la fonction QUERY.

Utiliser la fonction QUERY comme alternative à la fonction FILTER dans Google Sheets est assez simple.

Vous pouvez utiliser la requête pour filtrer les données en quelques secondes ! Je remarque clairement quelques avantages lorsque vous optez pour la fonction QUERY plutôt que la fonction FILTER.

Avantages d’utiliser la fonction QUERY comme alternative à la fonction FILTER

La fonction QUERY offre plusieurs avantages par rapport à la fonction FILTER, notamment dans les scénarios nécessitant une manipulation et une extraction de données plus complexes :

Choix des colonnes :

Lorsque vous utilisez la fonction QUERY pour filtrer les données, vous avez la possibilité d’omettre les colonnes que vous ne souhaitez pas voir apparaître dans votre résultat. Cela se révèle particulièrement utile lors de l’utilisation d’expressions de valeur telles que IMPORTRANGE pour les données. En revanche, l’utilisation de FILTER peut nécessiter des fonctions supplémentaires telles que CHOOSECOLS, INDEX et ARRAY_CONSTRAIN pour sélectionner les colonnes souhaitées.

Opérateurs de comparaison de chaînes de caractères :

QUERY offre des opérateurs de comparaison de chaînes de caractères complexes pour un filtrage avancé. Dans le cas de FILTER, des fonctions supplémentaires telles que SEARCH, FIND ou REGEXMATCH peuvent être nécessaires.

Sensibilité à la casse :

Il s’agit d’une autre fonctionnalité de la fonction QUERY qui s’avère bénéfique dans certains cas.

Tri :

La fonction QUERY peut filtrer et trier les données en une seule opération.

Étiquettes de champ :

Contrairement à FILTER, QUERY peut identifier la ligne d’en-tête, ce qui garantit qu’elle ne filtre pas la ligne d’en-tête lorsqu’elle est spécifiée. De plus, vous avez la possibilité de renommer des colonnes dans la formule.

Agrégation :

Outre le filtrage, la fonction QUERY peut agréger et regrouper les données.

Décalage :

En plus du filtrage, elle peut décaler un certain nombre de lignes spécifié.

Tandis que FILTER est plus simple pour les tâches de filtrage de base, QUERY est préférable dans les situations où vous avez besoin de fonctionnalités de requête avancées et d’un plus grand contrôle sur les résultats.

Le choix entre QUERY et FILTER dépend de la complexité de vos besoins en matière d’analyse de données.

Exemples d’utilisation de la fonction QUERY comme alternative à la fonction FILTER

Tout d’abord, laissez-moi clarifier une chose : il n’est pas nécessaire de connaître la fonction FILTER de Google Sheets avant de suivre le tutoriel G-Query ci-dessous. Comprendre la fonction FILTER pourrait certainement vous aider à comprendre les différences.

La première étape consiste à disposer de données d’exemple. Il vous suffit d’entrer les données ci-dessous dans un nouveau fichier Google Sheets dans la plage A1:F16 et de nommer l’onglet « Master », ou d’utiliser le bouton fourni pour copier la feuille d’exemple.

Exemple de feuille :

Image Source

Vous devez nommer cette plage (ce n’est pas nécessaire si vous utilisez ma feuille d’exemple, car je l’ai déjà nommée) pour simplifier la formule. Le nommage des plages est le moyen le plus efficace d’améliorer la lisibilité d’une formule.

Pour ce faire, accédez au menu Données et sélectionnez Plages nommées. Attribuez le nom de plage « sourcemaster » comme indiqué ci-dessous.

Remarque : Vous pouvez maintenant utiliser LET pour nommer directement les plages dans la formule elle-même.

Filtrer le champ de texte

Vous pouvez observer différents groupes d’âge répertoriés sous le champ « age_group ». J’utilise la fonction QUERY pour filtrer le champ « age_group » pour le groupe « 11-17 » dans une nouvelle feuille du même fichier/Classeur Google Sheets.

Formule : =QUERY(sourcemaster, "select A, B, C, D, E, F where B='11-17' ", 1)

Dans la formule de requête ci-dessus, « sourcemaster » est la plage nommée que vous venez de créer dans la feuille « Master », et A, B, C, D, E et F sont les colonnes que vous souhaitez extraire.

La syntaxe de la fonction QUERY est la suivante :

QUERY(data, query, [headers])

Comme mentionné précédemment, vous pouvez utiliser la fonction QUERY comme alternative à la fonction FILTER dans Google Sheets. Voici la formule FILTER équivalente :

=FILTER(sourcemaster, CHOOSECOLS(sourcemaster, 2)="11-17")

Si vous analysez les résultats, vous pouvez voir que la requête conserve l’en-tête, tandis que le filtrage ne le fait pas.

Si vous souhaitez en savoir plus sur la fonction FILTER, consultez notre tutoriel sur le filtrage des données dans des feuilles séparées dans Google Sheets.

Filtrer le champ de date

Dans la formule de requête Google Sheets précédente, nous avons appliqué un champ de texte comme critère, à savoir « 11-17 ». Lors de l’utilisation d’une date comme critère dans QUERY, suivez la formule ci-dessous.

=QUERY(sourcemaster, "select A, C where F = date '1999-09-20'", 1)

J’ai utilisé la fonction QUERY pour filtrer le champ « dob » (date de naissance) dans les données de la feuille « Master ». La sortie résultante ne contiendra que les noms et les genres.

Voici la formule FILTER équivalente :

=FILTER(CHOOSECOLS(sourcemaster, {1, 3}), CHOOSECOLS(sourcemaster, 6)=DATE(1999, 9, 20))

Consultez les deux tutoriels suivants pour comprendre correctement l’utilisation de la date en tant que critère dans la fonction QUERY :

  1. Convertir une date en chaîne de caractères en utilisant la méthode longue dans Google Sheets.
  2. Comment utiliser des critères de date dans la fonction QUERY de Google Sheets.

Filtrer le champ numérique

Si vous souhaitez utiliser un nombre comme critère dans QUERY, suivez l’exemple ci-dessous.

En utilisant les mêmes données d’exemple que précédemment, appliquons la fonction pour filtrer les données en fonction du champ « age ».

=QUERY(sourcemaster, "select A, B, C, D, E, F where E = 24", 1)

Cette formule filtre le champ « age » où l’âge des membres est de 24 ans.

Voici la formule FILTER équivalente :

`=FILTER(sourcemaster, CHOOSECOLS(sourcemaster, 5)=24)

Conclusion

Dans tous les exemples ci-dessus, nous avons spécifié le critère dans la formule. Cependant, vous pouvez également utiliser une référence de cellule. Pour en savoir plus sur l’utilisation des références de cellules dans la fonction QUERY de Google Sheets, consultez : « Comment utiliser la référence de cellule dans la requête Google Sheets. »

J’espère que vous avez compris comment utiliser la fonction QUERY comme alternative à la fonction FILTER dans Google Sheets.

Les exemples fournis sont simples, surtout si vous créez d’abord l’ensemble de données d’exemple et appliquez les formules vous-même.

Pour une compréhension plus approfondie de cette fonction, veuillez consulter les tutoriels suivants :

  1. Comment utiliser la fonction Mois dans la requête de Google Sheets.
  2. Filtrer par mois et année en utilisant la requête dans Google Sheets.
  3. Comment utiliser la fonction Datediff dans la requête de Google Sheets.
  4. Comment utiliser l’opérateur de chaîne LIKE dans la requête de Google Sheets.
  5. Correspondance partielle CONTIENT dans la requête de Google Sheets pour les correspondances partielles.
  6. Comment utiliser « différent de » dans la requête de Google Sheets.
  7. Comment utiliser les opérateurs arithmétiques dans la requête de Google Sheets.
  8. Comment faire la somme, la moyenne, le décompte, le maximum et le minimum dans la requête de Google Sheets.
  9. Comment utiliser la requête avec Importrange dans Google Sheets.
  10. Correspondance de préfixe avec COMMENCE PAR et NE COMMENCE PAS PAR dans la requête de Google Sheets.
  11. Correspondance de suffixe avec SE TERMINE PAR et NE SE TERMINE PAS PAR dans la requête.
  12. Comment utiliser les opérateurs Et, Ou et Non dans la requête de Google Sheets.
  13. Opérateurs de comparaison simples dans la requête de Google Sheets.
  14. Comment utiliser plusieurs OU dans la requête de Google Sheets.
  15. Comment utiliser DateTime dans la requête de Google Sheets.
  16. Exemples de l’utilisation de littéraux dans la requête de Google Sheets.
  17. Plusieurs CONTIENT dans la clause WHERE de la requête de Google Sheets.
  18. Comment décaler une correspondance à l’aide de la requête dans Google Sheets.

Articles en lien