我试图在BigQuery的SQL的WHERE
子句中编写以下条件,但我的语法有困难,特别是 date 数学:
WHERE date_column between current_date() and current_date() - 15 days
这在MySQL中看起来很容易,但我无法使用BigQuery SQL。
答案 0 :(得分:11)
使用DATE_SUB
select *
from TableA
where Date_Column between DATE_SUB(current_date(), INTERVAL 15 DAY) and current_date()
请记住,between
需要最早的日期
答案 1 :(得分:7)
您应该切换两者 - 语法应如下所示:
WHERE date_column BETWEEN DATE_ADD(CURRENT_DATE(), -15, 'DAY') AND CURRENT_DATE()
答案 2 :(得分:0)
这对我有用。
WHERE DATE(date_column) BETWEEN DATE(DATE_ADD(CURRENT_DATE(), -15, 'DAY'))
AND CURRENT_DATE()
答案 3 :(得分:0)
使用 current_date()函数
SELECT ARRAY_TO_STRING(split(cast(current_date() as string),"-"),'')