如何从 Bigquery 中提取过去 3 天的数据,不包括今天和昨天的数据
How to pull data from the past 3 days, not including today's and yesterday's from Bigquery
使用标准 SQL。当 table 由通配符 table 组成时。
我尝试使用这个:
SELECT *
FROM `Resourse.Reports_Reg.Session_streaming`
WHERE
SUBSTR(_table_suffix, 0, 6) =
FORMAT_DATE("%E4Y%m", DATE_SUB(CURRENT_DATE, INTERVAL 3 day))
我认为这个请求应该 return 最近 5 天的数据。但是我还是不明白它 return 对我来说是什么数据。如何拉取过去3天的数据,不包括今天和昨天
实际上,鉴于您的查询没有通配符,您没有在 _table_suffix
中选择任何内容。
如果您的 table 具有例如这样的名称结构:
`Resourse.Reports_Reg.Session_streaming_20170820`
最后一个字符串是格式为“%Y%m%d”的日期,然后选择过去的第三天和第二天可以像这样完成:
SELECT
*
FROM `Resourse.Reports_Reg.Session_streaming_*`
WHERE _TABLE_SUFFIX BETWEEN FORMAT_DATE("%Y%m%d", DATE_SUB(CURRENT_DATE, INTERVAL 3 day)) AND FORMAT_DATE("%Y%m%d", DATE_SUB(CURRENT_DATE, INTERVAL 2 day))
请注意通配符“*”正在选择日期“20170820”。在那之后,只有一个 where 子句选择合适的日期。
使用标准 SQL。当 table 由通配符 table 组成时。 我尝试使用这个:
SELECT *
FROM `Resourse.Reports_Reg.Session_streaming`
WHERE
SUBSTR(_table_suffix, 0, 6) =
FORMAT_DATE("%E4Y%m", DATE_SUB(CURRENT_DATE, INTERVAL 3 day))
我认为这个请求应该 return 最近 5 天的数据。但是我还是不明白它 return 对我来说是什么数据。如何拉取过去3天的数据,不包括今天和昨天
实际上,鉴于您的查询没有通配符,您没有在 _table_suffix
中选择任何内容。
如果您的 table 具有例如这样的名称结构:
`Resourse.Reports_Reg.Session_streaming_20170820`
最后一个字符串是格式为“%Y%m%d”的日期,然后选择过去的第三天和第二天可以像这样完成:
SELECT
*
FROM `Resourse.Reports_Reg.Session_streaming_*`
WHERE _TABLE_SUFFIX BETWEEN FORMAT_DATE("%Y%m%d", DATE_SUB(CURRENT_DATE, INTERVAL 3 day)) AND FORMAT_DATE("%Y%m%d", DATE_SUB(CURRENT_DATE, INTERVAL 2 day))
请注意通配符“*”正在选择日期“20170820”。在那之后,只有一个 where 子句选择合适的日期。