使用BigQuery和Legacy SQL。 如果当前日期是星期一,我试图修改我的WHERE语句以回顾3天,否则回顾1。
我无法弄清楚如何做到这一点。
目前我只想查看日期是否为当前日期-1。
当前代码:
WHERE
TIMESTAMP(o.last_modified_on) > DATE_ADD(TIMESTAMP(CURRENT_DATE()), -1, 'DAY')
任何指导都将不胜感激。
按照这些思路思考(注意:这不起作用)
Where CASE TIMESTAMP(ii.last_modified_on) = TIMESTAMP(CURRENT_DATE()) WHEN
DAYOFWEEK(TIMESTAMP(ii.last_modified_on)) = 2 THEN
DATE_ADD(TIMESTAMP(CURRENT_DATE()), -3, 'DAY') ELSE
DATE_ADD(TIMESTAMP(CURRENT_DATE()), -1, 'DAY') END
答案 0 :(得分:0)
WHEN TIMESTAMP(o.last_modified_on) >
CASE WHEN DAYOFWEEK(CURRENT_TIMESTAMP()) = 2
THEN DATE_ADD(CURRENT_TIMESTAMP(), -3, 'DAY')
ELSE DATE_ADD(CURRENT_TIMESTAMP(), -1, 'DAY')
END