BigQuery SQL 错误:在 [9:15] 的最新版本中找不到名称排名



我正在使用从文档中粘贴的查询来删除 BigQuery 数据集的重复数据。当我使用查询时,我收到一个错误:

[9:15] 的最新版本中找不到名称排名

我只是不明白为什么。注意:我是SQL的新手。有问题的查询如下:

SELECT *
FROM (
SELECT *,
RANK () OVER (PARTITION BY gregoriandate 
ORDER BY _sdc_report_datetime DESC)
FROM hf_bing.campaign_performance_report
ORDER BY gregoriandate ASC
) AS latest
where latest.rank = 1

也许这已经为您解决了:

SELECT 
*
FROM (
SELECT
*,
RANK () OVER (PARTITION BY gregoriandate ORDER BY _sdc_report_datetime DESC) AS rank_
FROM hf_bing.campaign_performance_report
)
WHERE rank_ = 1

当您使用WHERE latest.rank = 1时,实际上latest中没有名为rank的字段,这会导致您得到的错误。我基本上为字段使用了别名,所以现在 BigQuery 可以准确地知道引用的是哪个字段。

相关内容

最新更新