如何在数据工作室的 bigquery 中将年份整数解析为日期?

Posted

技术标签:

【中文标题】如何在数据工作室的 bigquery 中将年份整数解析为日期?【英文标题】:How to parse Year integer into date in bigquery or datastudio? 【发布时间】:2021-10-06 16:43:20 【问题描述】:

我的年份 col 以整数格式命名为“日期”。 我尝试在 BigQuery 中进行这样的转换

PARSE_DATE('%Y', CAST(date AS int64)) AS parsed_date

错误:对于参数类型:STRING、INT64,函数 PARSE_DATE 没有匹配的签名。支持的签名:PARSE_DATE(STRING, STRING) 在 [1:13]

在 Data Studio 中,我成功创建了一个这样的字段,但没有创建时间图:

PARSE_DATE("%Y", date)

请更正 bigquery 代码!

【问题讨论】:

还是不清楚你输入的数据是什么!请澄清! 【参考方案1】:

如果要使用此方法,应先调用PARSE_DATE 获取文本年份,然后转换为整数:

CAST(PARSE_DATE('%Y', date) AS int64) AS parsed_date

但也许在这里使用返回int64EXTRACT会更容易:

EXTRACT(year FROM date)

【讨论】:

【参考方案2】:

您可以考虑这种方法。 您首先需要提取日期的年份,然后将年份转换为 INT64

在这段代码中你可以看到一个示例代码:。

select CAST(EXTRACT (YEAR FROM CURRENT_DATE()) as INT64)

您可以在 BigQuery 中查看有关 CAST 和 EXTRACT 命令的更多信息。

【讨论】:

extract(year from ...) 返回 int64 所以你不需要投射它!

以上是关于如何在数据工作室的 bigquery 中将年份整数解析为日期?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 AppScript 在 BigQuery 中将 Google 工作表持久化为表格

如何在新的 bigquery 项目中将表复制到空数据集?

查询 Bigquery 重复字段

使用云功能从云存储中将数据加载到BigQuery中(替代功能?)

Google Cloud Data Fusion,如何在一个管道中将多个表加载到 bigquery

在 BigQuery 中将数据插入/创建分片/通配符表