BigQuery 将字符串转换为日期时间

BigQuery converting string to datetime

我正在使用 BigQuery 尝试我有一个 table 和一个名为 'DATAUTILIZACAO' 的字符串列,它具有以下示例值:

02/11/16 12:19:08,000000

02/11/16 17:39:41,000000

文本格式为“DD/MM/YY HH:mm:ss” 我需要创建一个 DATETIME 类型的新列,其中包含 DATAUTILIZACAO.

的值

如何从 DATAUTILIZACAO 中获取值并将其格式化为“YYYY-MM-DD HH:MI:SS”并将其保存到新列中?

我可以直接使用 Query+UDF 来实现吗?

谢谢,

狮子座

尝试以下(对于标准 SQL - 参见 Enabling Standard SQL and Migrating from legacy SQL

WITH TheTable AS (
  SELECT '02/11/16 12:19:08,000000' AS DATAUTILIZACAO UNION ALL
  SELECT '02/11/16 17:39:41,000000' AS DATAUTILIZACAO 
)
SELECT DATAUTILIZACAO, PARSE_TIMESTAMP('%d/%m/%y %H:%M:%S,000000', DATAUTILIZACAO) AS parsedDATAUTILIZACAO
FROM TheTable

PARSE_TIMESTAMP()

上查看更多内容

您可以使用 PARSE_DATETIME to get a DATETIME value from the strings using standard SQL(取消选中 "Show Options" 下的 "Use Legacy SQL")。例如,

WITH T AS (
  SELECT DATAUTILIZACAO
  FROM UNNEST(['02/11/16 12:19:08,000000',
               '02/11/16 17:39:41,000000']) AS DATAUTILIZACAO
)
SELECT PARSE_DATETIME('%D %T,000000', DATAUTILIZACAO) AS dt
FROM T;