sql - BigQuery:如何使用应用于同一列的三个不同过滤器获取数据?
问题描述
我正在尝试在 bigquery 中获取以下条件的数据。1. Given_Day -> Calendar_Day = PARSE_DATE('%d/%m/%Y','14/10/2020')
2. last_year_same_day -> Calendar_Day = DATE_ADD(PARSE_DATE('%d/%m/%Y','14/10/2020'), INTERVAL -1 YEAR)
3. last_week_same_day ->Calendar_Day = PARSE_DATE('%d/%m/%Y','14/10/2020') - 7
上面的查询过滤器在单独使用时有效,但在Calendar_Day
三个条件一起应用时会失败。
尝试查询:
select
Calendar_day,
Sales,
from `table`
where
Calendar_Day = DATE_ADD(PARSE_DATE('%d/%m/%Y','14/10/2020'), INTERVAL -1 YEAR) #last_year_same_day
and Calendar_Day = PARSE_DATE('%d/%m/%Y','14/10/2020') - 7 #last_week_same_day
and Calendar_Day = PARSE_DATE('%d/%m/%Y','14/10/2020') #today
需要解决方案。提前致谢!
解决方案
where
(Calendar_Day = DATE_ADD(PARSE_DATE('%d/%m/%Y','14/10/2020'), INTERVAL -1 YEAR)) #last_year_same_day
OR (Calendar_Day = PARSE_DATE('%d/%m/%Y','14/10/2020') - 7) #last_week_same_day
OR (Calendar_Day = PARSE_DATE('%d/%m/%Y','14/10/2020')) #today
推荐阅读
- html - 如何嵌入外部 html 并更改 css 样式?
- java - 为 Java 中的每个单元测试重新初始化枚举值
- sql - 使用 Slick 在选择中过滤
- c# - C# 在抓取之前等待网页加载
- java - 无法从 WSDL 创建 Web 服务(netbeans:指定的 WSDL 文件中没有服务。)
- php - Laravel 如何在多个图像之间进行选择,如 og:image
- javascript - React : date[("get" + method)] 不是函数
- c++ - 使用迭代器读取类对象向量中的向量失败
- javascript - Vuejs 3 API 文档
- javascript - 下面代码的输出是NaN,为什么?