如何在 Google Bigquery 中将日期中的 GENERATE_DATE_ARRAY 拆分为单行以创建日期视图?

jbe*_*bev 4 sql arrays google-bigquery unnest

我正在尝试使用 Google Bigquery 中另一个表中的最小和最大日期创建日期视图。我遇到过 GENERATE_DATE_ARRAY 并能够在单个数组中创建我想要的日期。然而,将它们拆分为每行一个日期一直是困难的部分。

我尝试使用 UNNEST 来执行此操作,但是当我运行代码时,它只给出第一个结果,因此我在这里遗漏了一些内容。

这是我用来生成数组的代码,但我坚持将其拆分:

SELECT GENERATE_DATE_ARRAY( 
              MIN(CAST(journaldate AS DATE)), 
              MAX(CAST(journaldate AS DATE))
            )
          AS Period
FROM
dataset.table
Run Code Online (Sandbox Code Playgroud)

Gor*_*off 8

我想你想要:

SELECT Period
FROM (SELECT MIN(CAST(journaldate AS DATE)) as min_date,
             MAX(CAST(journaldate AS DATE)) as max_date
      FROM dataset.table
     ) t JOIN
     UNNEST(GENERATE_DATE_ARRAY(t.min_date, t.max_date)) period
Run Code Online (Sandbox Code Playgroud)