2017-07-28 102 views
0

我发现了很多适用于Cloud BigQuery的日期函数,并且我有一个特定的案例,这些可用的函数都不起作用。 我的数据会有'MMddyy'格式的日期列,我想将其转换为'yyyy-MM-dd'格式。我怎样才能做到这一点?在BigQuery中格式化日期

回答

2

这是一种可能性:

#standardSQL 
WITH data AS(
    SELECT '072817' as dt UNION ALL 
    select NULL UNION ALL 
    SELECT '' 
) 

SELECT IF(dt != '', FORMAT_DATE("%Y-%m-%d", PARSE_DATE("%m%d%y", dt)), dt) FROM data 
+0

还有一个问题,如果我们得到了所有空白值输入到该日期格式的功能。我的数据集包含“日期”字段的一些空白值,该字段使查询失败。我不希望我的查询失败。我希望我的查询做的是,如果有一个有效的值将其转换为我所需的格式,否则保持空白的方式。 –

+0

@BalajeeVenkatesh我更新了我的问题,让我知道它是否适合你。 –