在bigquery中解析日期形式的字符串

广告

我在bigquery中有一个表,该表的列名称为“ timeStamp”,数据类型为STRING。该列中的值看起来像这样的“ 20180902”。

这就是我试图解析此字符串到目前为止的方式

SELECT PARSE_DATE('%Y%m%d', timeStamp) AS date FROM data.data_temp

但这会引发错误,提示“无法解析输入字符串“ timeStamp””

另外,同时以下查询成功运行,并将日期返回为“ 2018-09-02”

SELECT PARSE_DATE('%Y%m%d', '20180902') AS date FROM data.data_temp

关于这里发生的事情以及如何解决这个问题的任何线索?

米哈伊尔·伯利安(Mikhail Berlyant)

下面的示例显示,如果您声明值确实为“ 20180902”,则它应该可以工作

#standardSQL
WITH `project.dataset.table` AS (
  SELECT '20180902' timeStamp   
)
SELECT 
  `timeStamp`, 
  PARSE_DATE('%Y%m%d', timeStamp    ) AS date    
FROM `project.dataset.table`

结果为

Row   timeStamp   date   
1     20180902    2018-09-02     

因此,该问题在某些行中可能有错误的值-并且您需要标识这些行

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章