

以下のような簡単なコードなのですが、dataをcast(data as date) as
dateとしてデータ型をStringからDateに変えたいのですが、エラーがでます。解決策をどなたかお教え願えませんか。

[code]

    SELECT
      date,
      product.productSKU,
      SUM(totals.pageviews) AS pageview,
      SUM(totals.visits) AS session,
      SUM(totals.transactions) AS transaction,
      COUNT(DISTINCT fullvisitorid) AS user,
      SUM(totals.newvisits) AS newvisits,
      SUM(totals.bounces) AS bounces
    FROM
     サンプル.ga_sessions_,
      UNNEST(hits) AS hits,
      UNNEST(hits.product) AS product
    WHERE
      _TABLE_SUFFIX BETWEEN FORMAT_DATE('%Y%m%d',DATE_SUB(CURRENT_DATE(), INTERVAL 6 month))
      AND FORMAT_DATE('%Y%m%d',DATE_SUB(CURRENT_DATE(), INTERVAL 1 DAY))
    GROUP BY
      date,
      product.productSKU
    order by date
    
[/code]


CC BY-SA 4.0
2020-05-29T09:52:07.950
67123
2022-03-23T09:01:45.143
2020-05-29T15:33:08.507
3068
40386
question
google-bigquery google-analytics
BigQueryで取り込んだGAデータのdateを日付型に変えたい


`ga_sessions_` の `date` には `YYYYmmdd`
のような形式の文字列が入っており、DATE型として扱えない文字列のため、castしようとするとエラーになります。

そのため、`PARSE_DATE()`などを使用してDATE型に変換する必要があるかと思います。

<https://cloud.google.com/bigquery/docs/reference/standard-
sql/date_functions?hl=ja#parse_date>

[code]

    SELECT
      date,
      PARSE_DATE('%Y%m%d', date) AS parsed_date
    FROM
      UNNEST(
        ARRAY<STRUCT<date STRING>>[
          STRUCT('20200601'),
          STRUCT('20200602'),
          STRUCT('20200603'),
          STRUCT('20200604'),
          STRUCT('20200605'),
          STRUCT('20200606')
        ]
      )
    
[/code]

`YYYY-mm-dd`のようなDATE型として扱われるような文字列であれば、castによりDATE型へ変換できます。

<https://cloud.google.com/bigquery/docs/reference/standard-sql/data-
types?hl=ja#date_type>

[code]

    SELECT
      date,
      DATE_ADD(CAST(date AS DATE), INTERVAL 7 DAY) AS one_week_later
    FROM
      UNNEST(
        ARRAY<STRUCT<date STRING>>[
          STRUCT('2020-06-01'),
          STRUCT('2020-06-02'),
          STRUCT('2020-06-03'),
          STRUCT('2020-06-04'),
          STRUCT('2020-06-05'),
          STRUCT('2020-06-06')
        ]
      )
    
[/code]


CC BY-SA 4.0
2020-05-29T15:26:28.303
67127
2020-05-29T15:34:36.277
2020-05-29T15:34:36.277
3068
3068
67123
answer