Google bigquery 在BigQuery中解析日期时间
下面是“date”字段的日期格式,我从API到Bigquery将其作为字符串获取。 2020-09-17T00:00:00+03:00 我想将日期格式解析为“%Y%m%d”,然后将其提取为ISOWEEK。 这是我想出的代码Google bigquery 在BigQuery中解析日期时间,google-bigquery,Google Bigquery,下面是“date”字段的日期格式,我从API到Bigquery将其作为字符串获取。 2020-09-17T00:00:00+03:00 我想将日期格式解析为“%Y%m%d”,然后将其提取为ISOWEEK。 这是我想出的代码 EXTRACT(ISOWEEK FROM PARSE_DATETIME("%Y%m%d", REGEXP_EXTRACT(date, r"..................."))) 然而,这给了我一个错误。 你能告诉我什么需要改变
EXTRACT(ISOWEEK FROM PARSE_DATETIME("%Y%m%d", REGEXP_EXTRACT(date, r"...................")))
然而,这给了我一个错误。
你能告诉我什么需要改变吗?
谢谢让我们在这里分解步骤。日期输入是特定时区(+03:00)中的日期字符串,例如
“2020-09-17T00:00:00+03:00”
。然后在此字符串上可以应用:
- 将日期保持在正确的时区
日期(“2020-09-17T00:00:00+03:00”,“03:00”)
- 使用字符串中所需的格式格式化日期
FORMAT_DATE(“%Y/%m/%d”,日期(“2020-09-17T00:00:00+03:00,“+03:00”))
- 从先前格式化的字符串中解析日期
PARSE_DATE(“%Y/%m/%d”,格式_DATE(“%Y/%m/%d”,日期(“2020-09-17T00:00:00+03:00”),“+03:00”))
- 最后从日期中提取ISOWEEK
EXTRACT(从解析日期(“%Y/%m/%d”,格式为“%Y/%m/%d”,日期(“2020-09-17T00:00:00+03:00”),“+03:00”)开始的一周)
所以,这会给你想要的结果
选择提取(从解析日期(“%Y/%m/%d”,格式为日期(“%Y/%m/%d”,日期(DATE)))开始的一周)
如果“%Y/%m/%d”在其他方面对您没有帮助,您也可以跳过它,只需执行以下操作即可
选择摘录(从日期开始的一周(“2020-09-17T00:00:00+03:00”,“03:00”))
结果是一样的