Boa noite, no desafio que o professor mostrou, ele cria uma tabela de datas entre os dias 1 de janeiro de 2021 e a data atual, para depois procurar os dias nos quais não houve venda.
Se eu quiser não usar datas fixas, mas ao inves disso, criar uma lista entre a data inicial (ou menor data) da tabela de vendas, e a data final (ou maior data) da tabela de vendas, independentemente de quais forem essas datas, eu pensei fazer isto:
WITH
MINMAX AS (
SELECT
MIN(VEN.data) AS DATAINICIAL,
MAX(VEN.data) AS DATAFINAL
FROM
`beleza_verde_vendas.vendas` AS VEN
),
LISTADIAS AS (
SELECT
DIA
FROM
UNNEST(GENERATE_DATE_ARRAY(DATAINICIAL,DATAFINAL)) AS DIA
)
SELECT
*
FROM
LISTADIAS
/* aqui continuaria com o INNER JOIN e etc */;
Porem recebo o erro:
Query error: Unrecognized name: DATAINICIAL at [xxx]
onde xxx é a linha do código
FROM UNNEST(GENERATE_DATE_ARRAY(DATAINICIAL,DATAFINAL)) AS DIA
O que estou fazendo errado?
Obrigado