0

我正在使用 Google Bigquery 从公共数据集 new_york_citibike 中查询数据。我想获得可用的 num_bikes 和 station_id 上可用的平均自行车数。查询是:

SELECT station_id, num_bikes_available (SELECT AVG(num_bikes_available) AS average_bikes_available
FROM bigquery-public-data.new_york_citibike.citibike_stations
)
FROM bigquery-public-data.new_york_citibike.citibike_stations

第二个查询是:

SELECT station_id, num_bikes_available, AVG(num_bikes_available) AS average_bikes_available
FROM bigquery-public-data.new_york_citibike.citibike_stations
GROUP BY station_id

我得到的错误是“ SELECT list expression references column num_bikes_available which is not grouped not aggregated ”。 为什么在第二种情况下我必须聚合 num_bikes_available 。

4

1 回答 1

0

您需要提供示例数据,但我认为这是您想要做的:

SELECT station_id
       , sum(num_bikes_available) as num_bikes_available
       , avg(num_bikes_available) AS average_bikes_available
FROM bigquery-public-data.new_york_citibike.citibike_stations
GROUP BY station_id
于 2021-12-03T14:59:31.020 回答