如何解决在BigQuery中减去最近3个月的数据
在BigQuery中,我正在寻找如何减去最近3个月的时间。 这是我到目前为止所想的,但这包括使用CURRENT_DATE()的本月数据。
SELECT
*
FROM
ga_123456
WHERE
_TABLE_SUFFIX BETWEEN FORMAT_DATE('%Y%m%d',DATE_SUB(CURRENT_DATE(),INTERVAL 36 MONTH))
AND FORMAT_DATE('%Y%m%d',INTERVAL 1 DAY))
今天说8月20日,我在寻找5月1日至7月31日之间的日期,所以这是前三个月。 谢谢。
解决方法
如果_TABLE_SUFFIX为日期格式:
SELECT * FROM ga_123456
WHERE DATEPART(month,_TABLE_SUFFIX) > DATEPART(month,DATEADD(month,-3,getdate()))
AND DATEPART(yyyy,_TABLE_SUFFIX) > DATEPART(yyyy,getdate()))
否则,请使用CONVERT()函数调整_TABLE_SUFFIX
,以下是用于BigQuery标准SQL
假设您的表格名称的格式为`ga_YYYYMMDD
#standardSQL
SELECT *
FROM ga_*
WHERE _TABLE_SUFFIX
BETWEEN FORMAT_DATE('%Y%m%d',DATE_SUB(DATE_TRUNC(CURRENT_DATE(),MONTH),INTERVAL 3 MONTH))
AND FORMAT_DATE('%Y%m%d',INTERVAL 1 DAY))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。