了解 "Not found: Dataset ### was not found in location US" 错误

Understanding the "Not found: Dataset ### was not found in location US" error

我知道这个话题已经多次出现,但我仍然在这里。数据处理位置似乎一致(数据集,美国;查询:美国),我在 FROM 子句中使用反引号和长格式

下面是两个代码序列。第一个完美运行:

SELECT station_id
FROM `bigquery-public-data.austin_bikeshare.bikeshare_stations`

而下面的returns错误信息:

SELECT bikeshare_stations.station_id
FROM `bigquery-public-data.austin_bikeshare`

未找到:数据集 glassy-droplet-347618:bigquery-public-data 在美国

位置未找到

因此,我的问题是为什么文本的第一行有效而第二行无效?

您需要了解反引号的不同部分:

  1. bigquery-public-data为项目名称;
  2. austin_bikeshare 是架构的名称(也就是 BQ 中的数据集);和
  3. bikeshare_stations 是 table/view 的名称。

因此,您正在寻找的较短格式是:austin_bikeshare.bikeshare_stations(而不是 bigquery-public-data.austin_bikeshare)。

使用 bigquery-public-data.austin_bikeshare 意味着您有一个名为 bigquery-public-data 的架构,其中包含一个名为 austin_bikeshare 的 table,但事实并非如此。