web-dev-qa-db-fra.com

BigQuery SQL WHERE Date entre la date actuelle et -15 jours

J'essaie de coder la condition suivante dans la clause WHERE de SQL dans BigQuery, mais je rencontre des difficultés avec la syntaxe, en particulier date math:

WHERE date_column between current_date() and current_date() - 15 days

Cela semble facile dans MySQL, mais je ne peux pas le faire fonctionner avec BigQuery SQL.

4
Eric Hendershott

Utilisez DATE_SUB

select * 
from TableA
where Date_Column between DATE_SUB(current_date(), INTERVAL 15 DAY) and current_date()

Rappelez-vous, between a besoin de la date la plus ancienne en premier

9
JohnHC

Vous devriez probablement permuter les deux - la syntaxe devrait être la suivante:

WHERE date_column BETWEEN DATE_ADD(CURRENT_DATE(), -15, 'DAY') AND CURRENT_DATE()
6
Siyual

C’est un travail pour moi WHERE DATE(date_column) BETWEEN DATE(DATE_ADD(CURRENT_DATE(), -15, 'DAY')) AND CURRENT_DATE()

0
ppk28