在google big query SQL中将字符串转换/更改为日期格式

bob*_*937 0 sql google-bigquery

大查询中的表显示变量"date"是一个字符串.

如何将字符串转换为日期格式?比如mmddyy,dd-mm-yyyy

在此输入图像描述

Ell*_*ard 6

表中的datega_sessions是格式YYYYMMDD,因此要将其解析为日期,您可以使用:

#standardSQL
SELECT PARSE_DATE('%Y%m%d', date) AS date
FROM YourTable;
Run Code Online (Sandbox Code Playgroud)

例如,

#standardSQL
WITH YourTable AS (
  SELECT '20170510' AS date UNION ALL
  SELECT '20170508'
)
SELECT PARSE_DATE('%Y%m%d', date) AS date
FROM YourTable;
Run Code Online (Sandbox Code Playgroud)

如果要将日期更改为其他格式,可以使用该FORMAT_DATE功能,例如:

#standardSQL
WITH YourTable AS (
  SELECT '20170510' AS date UNION ALL
  SELECT '20170508'
)
SELECT
  date,
  FORMAT_DATE('%m%d%y', date) AS mmddyy_format,
  FORMAT_DATE('%d-%m-%Y', date) AS dd_mm_yyyy_format
FROM (
  SELECT PARSE_DATE('%Y%m%d', date) AS date
  FROM YourTable
);
Run Code Online (Sandbox Code Playgroud)

你可以阅读有关支持的格式元素PARSE_DATE,并FORMAT_DATE 在文档中.