Intenta entender el código correctamente previamente a aplicarlo a tu trabajo si tquieres aportar algo puedes decirlo en los comentarios.
Solución:
Para cualquiera que busque hacer lo mismo con BigQuery Standard SQL, esto devolverá los datos de los últimos 30 días en función de la fecha actual.
https://cloud.google.com/bigquery/docs/reference/standard-sql/date_functions#date_add
SELECT
date,
FROM
`..`
WHERE
Date >= DATE_ADD(CURRENT_DATE(), INTERVAL -30 DAY);
Usando la propia documentación de Google, parece que necesita invertir los parámetros en la función DATE_ADD(). La función debe llamarse con tres parámetros de la siguiente manera:
DATE_ADD(,,)
siendo las unidades de intervalo el tipo de unidad de tiempo a la que hace referencia (día, hora, año, etc.)
La razón por la que recibe el error es que Google está tratando de convertir day
en algún tipo de date
formato.
Fuente: Referencia de consulta de Google
Texto citado:
DATE_ADD(timestamp,interval,interval_units)
Agrega el intervalo especificado a un tipo de datos TIMESTAMP. Los posibles valores de unidades de intervalo incluyen AÑO, MES, DÍA, HORA, MINUTO y SEGUNDO. Si el intervalo es un número negativo, el intervalo se resta del tipo de datos TIMESTAMP.
Ejemplo:
SELECCIONE DATE_ADD(TIMESTAMP(“2012-10-01 02:03:04”), 5, “AÑO”);
Devoluciones: 2017-10-01 02:03:04 UTC
SELECCIONE DATE_ADD(TIMESTAMP(“2012-10-01 02:03:04”), -5, “AÑO”);
Devoluciones: 2007-10-01 02:03:04 UTC
Si te ha sido útil este post, sería de mucha ayuda si lo compartieras con otros desarrolladores y nos ayudes a dar difusión a nuestra información.
¡Haz clic para puntuar esta entrada!(Votos: 0 Promedio: 0)
Utiliza Nuestro Buscador