Google BigQuery GROUP BY запрашивает нежелательный столбец - PullRequest
0 голосов
/ 17 июня 2020

Привет, я новичок в google bigquery и мне нужна помощь, почему мой запрос не работает? Он постоянно просит меня сделать GROUP BY trip_end_timestamp, чего я не хочу делать. Есть идеи?

SELECT 
EXTRACT(YEAR FROM trip_end_timestamp) AS trip_year
, company
, SUM(trip_total) total_revenue  
FROM `bigquery-public-data.chicago_taxi_trips.taxi_trips`
WHERE EXTRACT(YEAR FROM trip_end_timestamp) = 2015 
GROUP BY EXTRACT(YEAR FROM trip_end_timestamp), company
HAVING total_revenue >= 30000000000

ошибка

SELECT list expression references column trip_end_timestamp which is neither grouped nor aggregated at [2:26]

Заранее спасибо.

1 Ответ

1 голос
/ 17 июня 2020

BigQuery на самом деле настаивает, чтобы вы использовали псевдоним столбца в GROUP BY:

SELECT EXTRACT(YEAR FROM trip_end_timestamp) AS trip_year, company,
       SUM(trip_total) as total_revenue 
FROM `bigquery-public-data.chicago_taxi_trips.taxi_trips` tt
WHERE EXTRACT(YEAR FROM trip_end_timestamp) = 2015 
GROUP BY trip_year, company
HAVING total_revenue >= 30000000000;

Это контрастирует со стандартом, который не требует распознавания псевдонимов в GROUP BY - и других базах данных. где это необязательно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...