Date 如何从2个月前获取日期并将其用作子句bigquery

Date 如何从2个月前获取日期并将其用作子句bigquery,date,google-bigquery,Date,Google Bigquery,我正在尝试从2个月前开始获取2位格式,它将用作where子句,如下所示: select a,b, from x where month = 'rr' inner join select c,d from ... 我最近的查询是这样的,结果是3,而不是03 and MONTH = cast('extract(month from DATE_SUB(DATE "2021-05-27", INTERVAL 2 month)) 'as string) or and MONTH =

我正在尝试从2个月前开始获取2位格式,它将用作where子句,如下所示:

select a,b,
from x
where month = 'rr'
inner join
select c,d
from
...
我最近的查询是这样的,结果是3,而不是03

and MONTH = cast('extract(month from DATE_SUB(DATE "2021-05-27", INTERVAL 2 month)) 'as string)
or
and MONTH = cast('extract(month from DATE_SUB(V_ABC, INTERVAL 2 month)) 'as string)
在这种情况下,我可以使用什么样的技巧?

您可以在下面使用

AND MONTH = LPAD('' || EXTRACT(month FROM DATE_SUB(DATE "2021-05-27", INTERVAL 2 month)), 2, '0')

如果我想用参数进行解析,该怎么办?像这样:和MONTH=cast('extract(MONTH from DATE_SUB(V_ABC,INTERVAL 2 MONTH))'作为字符串)只需用相应的列名替换
“2021-05-27”
!因此,如果我想要去年的数据,我的职位是在2021年2月,那么它将是
和MONTH=LPAD(''| |提取(从日期算起的月份(V|ABC,间隔2个月)),2,'0'
hoow。应该是2020年12月,rite?是的-正如你在问题中所问的-应该是12月-也就是12月-对吗?你原来的问题已经完全回答了,请投赞成票并接受。如果您有新的/更多的问题-请发布新问题,我们将很乐意提供帮助:o)如果这样做有效,我们当然很乐意首先标记您。。还是不行。我想我得检查一下