Google Sheets QUERY : dates et heures
Pour effectuer une requête en fonction d'une date, d'une heure ou une date contenant également des heures, il faudra utiliser DATE, TIMEOFDAY ou DATETIME en fonction du cas.
DATE
Pour obtenir par exemple toutes les données dont la date (B) est supérieure au 31 mai 2019, entrez B >
suivi du mot-clé DATE
et de la date entre apostrophes '2019-05-31'
(au format yyyy-MM-dd) :
=QUERY(BD!A1:G15;"SELECT * WHERE B > DATE '2019-05-31'")

DATE en fonction d'une cellule
Si la date de la condition est contenue dans une cellule, utilisez la fonction TEXTE pour l'afficher au format texte et dans le bon format :
=QUERY(BD!A1:G15;"SELECT * WHERE B > DATE '"&TEXTE(I2;"yyyy-MM-dd")&"'")
DATE en fonction d'aujourd'hui
Pour obtenir par exemple toutes les données dont la date (B) a déjà plus de 30 jours, entrez :
=QUERY(BD!A1:G15;"SELECT * WHERE B < DATE '"&TEXTE(AUJOURDHUI()-30;"yyyy-MM-dd")&"'")

TIMEOFDAY
L'utilisation de TIMEOFDAY est similaire à DATE mais pour les heures cette fois-ci (la base de données ne contenant pas d'heures, une petite base de données a été créée pour cet exemple).
Pour obtenir toutes les données dont l'heure (F) est supérieure ou égale à 12:00:00, entrez TIMEOFDAY suivi de l'heure entre apostrophes (au format HH:mm:ss) :
=QUERY(E1:G7;"SELECT * WHERE F >= TIMEOFDAY '12:00:00'")

Ou si l'heure est contenue dans une cellule, entrez :
=QUERY(E1:G7;"SELECT * WHERE F >= TIMEOFDAY '"&TEXTE(I2;"HH:mm:ss")&"'")
DATETIME
Lorsqu'une date contient également des heures, utilisez DATETIME au lieu de DATE.
Pour obtenir toutes les données dont la date (F) est supérieure au 03/07/2019 16:00:00, entrez DATETIME suivi de la date et l'heure entre apostrophes (au format yyyy-MM-dd HH:mm:ss) :
=QUERY(E1:G7;"SELECT * WHERE F >= DATETIME '2019-07-03 16:00:00'")

Ou si la date est contenue dans une cellule, entrez :
=QUERY(E1:G7;"SELECT * WHERE F >= DATETIME '"&TEXTE(I2;"yyyy-MM-dd HH:mm:ss")&"'")