要获取最近30天的中位数,您可以使用以下代码示例:
WITH
daily_median AS (
SELECT
DATE(timestamp) AS date,
APPROX_QUANTILES(value, 2)[OFFSET(1)] AS median
FROM
`your_project.your_dataset.your_table`
WHERE
timestamp >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 30 DAY)
GROUP BY
date
ORDER BY
date ASC
)
SELECT
date,
median
FROM
daily_median
在上述代码中,我们使用了一个CTE(常用表达式)来计算每天的中位数。我们使用DATE(timestamp)
将日期从timestamp
字段中提取出来,并使用APPROX_QUANTILES
函数来计算每天值的中位数。然后,我们按日期升序排序结果。
最后,我们从CTE中选择日期和中位数,以获取最近30天的中位数。
请确保将your_project.your_dataset.your_table
替换为您的项目ID、数据集和表的正确值。