当我尝试使用DateFormat
函数格式化日期时,如下所示:
with table1 as (select date(2018,3,08) as d1)
select DateFormat(date(d1), 'yyyy-MM-dd')as d2 from table1;
返回以下错误:
Error: Function not found: DateFormat at [2:8]
我做错了什么?
答案 0 :(得分:2)
首先 - DATE(2018,3,08)
已经是DATE数据类型,并将日期返回为2018-03-08
,因此您无需进行任何额外格式化
第二 - 如果仍然出于某种原因需要将其格式化为字符串,因为让我们说MM-DD-YYYY
您可以使用FORMAT_DATE
函数,如下例所示
#standardSQL
WITH table1 AS (
SELECT DATE(2018,3,08) AS d1
)
SELECT d1, FORMAT_DATE('%m-%d-%Y', d1) AS d2
FROM table1
输出为
Row d1 d2
1 2018-03-08 03-08-2018