首页 > 解决方案 > 标准 SQL (BigQuery) 中整数 YYYMMDD 的日期

问题描述

我需要在 Bigquery 中将日期转换为格式为 YYYMMDD 的整数。

我试过:

PARSE_DATE('%Y%m%d', response_date)

但它不起作用(错误:参数类型的函数 PARSE_DATE 没有匹配的签名:STRING,DATE。支持的签名:PARSE_DATE(STRING,STRING)在 [1:8])

response_date:日期格式

想要的结果:20210201 作为整数或字符串

如果有人知道正确的语法,那将非常有帮助。谢谢!

标签: sqlgoogle-bigquery

解决方案


一种方法是算术:

select extract(year from response_date) * 10000 + extract(month from response_date) * 100 + extract(day from response_date)

另一种方法是FORMAT_DATE()

select cast(format_date('%Y%m%d', response_date) as int64)

推荐阅读