在 GBQ 中将字符串转换为日期

Cast String as Date in GBQ

我在 Big Query 中有一个查询,其中 payload.date 是一个字符串,我想将其转换为日期。我如何使用下面的示例查询来执行此操作?

我希望 payload.date 是日期而不是字符串。

SELECT count(number) FROM `sample_gbq_table` WHERE payload.event IN (30) AND payload.date >= '2022-04-27T00:00:01.000000+00:00' AND payload.date <= '2022-04-27T23:99:99.000000+00:00'

欢迎德文,

这是一个示例查询,我使用了您分享的其中一个日期。简而言之,您可以使用 DATE() 函数将这种字符串格式的日期简单地解析为日期对象:

WITH date AS(
  SELECT
  "2022-04-27T00:00:01.000000+00:00" AS string_date
)

SELECT
string_date,
DATE(string_date) AS parsed_date
FROM date

因此您可以将查询重写为:

SELECT count(number) 
FROM `sample_gbq_table` 
WHERE payload.event IN (30) 
AND DATE(payload.date) = '2022-04-27'