Google Sheets QUERY : fonctions scalaires
Les fonctions scalaires regroupent des fonctions de date et d'heure et des fonctions de texte.
Ces fonctions peuvent être utilisées avec : SELECT, WHERE, GROUP BY, PIVOT, ORDER BY, LABEL et FORMAT.
PIVOT, LABEL et FORMAT seront expliqués plus loin dans ce cours.
YEAR
La fonction YEAR retourne l'année d'une date.
Par exemple, pour retourner les utilisateurs de rang 2 (D) dont la date d'inscription (B) est 2019, entrez :
=QUERY(BD!A1:G15;"SELECT * WHERE YEAR(B) = 2019 AND D = 2")
MONTH
La fonction MONTH retourne le mois d'une date.
Par exemple, pour retourner les utilisateurs dont l'inscription (B) a été faite en juin, entrez :
=QUERY(BD!A1:G15;"SELECT * WHERE MONTH(B) = 5")
DAY
La fonction DAY retourne le jour d'une date.
Par exemple, pour retourner la date d'inscription (B), le jour d'inscription (B), le nom d'utilisateur (C) et limiter l'affichage à 10 résultats, entrez :
=QUERY(BD!A1:G15;"SELECT B, DAY(B), C LIMIT 10")
HOUR
La fonction HOUR retourne l'heure seule (sans les minutes ni les secondes).
Par exemple, pour retourner les données dont l'heure (F) est supérieure ou égale à 12, entrez :
=QUERY(E1:G7;"SELECT * WHERE HOUR(F) >= 12")
MINUTE
La fonction MINUTE retourne les minutes d'une donnée contenant une heure (son fonctionnement est similaire aux précédentes fonctions de date et d'heure).
SECOND
La fonction SECOND retourne les secondes d'une donnée contenant une heure (son fonctionnement est similaire aux précédentes fonctions de date et d'heure).
QUARTER
La fonction QUARTER retourne le trimestre d'une date (de 1 à 4).
Par exemple, pour retourner le trimestre (B) et la somme des messages (E) par trimestre (B), entrez :
=QUERY(BD!A1:G15;"SELECT QUARTER(B), SUM(E) GROUP BY QUARTER(B)")
Dans ce cas, il n'y a qu'une seule ligne retournée car un seul trimestre pour toutes les dates.
DAYOFWEEK
La fonction DAYOFWEEK retourne le jour de la semaine d'une date (de 1 à 7, dimanche = 1, lundi = 2, etc).
Par exemple, pour retourner le jour de la semaine (B) et le nombre d'inscriptions (B) par jour de la semaine (B), entrez :
=QUERY(BD!A1:G15;"SELECT DAYOFWEEK(B), COUNT(B) GROUP BY DAYOFWEEK(B)")
NOW
La fonction NOW retourne la date et l'heure actuelle (et peut être utilisée avec les autres fonctions de date et d'heure).
Par exemple, pour retourner le nombre d'inscriptions (B) de l'année en cours, entrez :
=QUERY(BD!A1:G15;"SELECT COUNT(B) WHERE YEAR(B) = YEAR(NOW())")
DATEDIFF
La fonction DATEDIFF calcule la différence entre 2 dates (pour obtenir un nombre positif, entrez la date la plus grande en premier).
Par exemple, pour récupérer la liste des utilisteurs (C) et la date d'inscription (B) des utilisateurs inscrits il y a moins de 60 jours, entrez :
=QUERY(BD!A1:G15;"SELECT C, B WHERE DATEDIFF(NOW(), B) < 60")
LOWER
La fonction LOWER convertit un texte en minuscules.
Pour ignorer la casse lors d'une recherche et récupérer par exemple les données des utilisateurs dont le prénom (C) contient la lettre "l" (en minuscule ou majuscule), entrez :
=QUERY(BD!A1:G15;"SELECT * WHERE LOWER(C) CONTAINS 'l'")
UPPER
La fonction UPPER convertit un texte en majuscules.
Par exemple, pour retourner les 10 premiers noms d'utilisateurs (C) en majuscules, entrez :
=QUERY(BD!A1:G15;"SELECT UPPER(C) LIMIT 10")