Syntaxe de la fonction
QUERY(données; requête; [en-têtes])
- données : plage de cellules sur laquelle effectuer la requête ;
- requête : doit être conforme au langage de requête de l’API Google Visualization (proche du SQL) et toujours entre guillemets (ou faire référence à la cellule comportant le texte) ;
- en-têtes – [FACULTATIF] : indique le nombre de lignes de la plage de données source à considérer comme des lignes d’en-tête, en partant de la première ligne de la plage de données.
Exemples d'utilisation
- QUERY(A1:E100;"SELECT *")
- QUERY(A1:E100;"SELECT * WHERE C > 75000")
- QUERY(A1:E100;"SELECT A, SUM(C) WHERE B IS NOT NULL GROUP BY A")
Exercices d'application
Dans cet exercice, nous souhaitons à l’aide de la fonction QUERY afficher à partir de la cellule A1 le nom, le niveau et la difficulté des fonctions ayant au moins trois étoiles. Ces fonctions sont listées dans la feuille « Sommaire » de notre tableur.
Pour cela, voici la formule à utiliser :
=QUERY(Sommaire!A1:E11;"SELECT B,C,D WHERE C >= 3 ORDER BY C DESC")
Détaillons le fonctionnement de cette formule pour en faciliter sa compréhension :
- notre fonction QUERY s’exécutera sur la plage A1:E11 de la feuille « Sommaire » du tableur ;
- la clause « SELECT » permet d’indiquer que nous ne voulons afficher que les colonnes B, C et D de cette plage ;
- la clause « WHERE » spécifie que nous ne souhaitons que les données dont le niveau de difficulté (colonne C) est supérieur ou égal à trois étoiles ;
- enfin, la clause « ORDER BY » précise que nous souhaitons trier notre résultat par ordre décroissant (DESC) du niveau de difficulté (C).
Voici un tableau récapitulant les différentes clauses utilisables avec la fonction QUERY, leur définition ainsi qu’un exemple. Attention, l’ordre des clauses doit être respecté !
Ouvrir dans Sheets