Использование агрегатных функций в одном SQL-запросе - PullRequest
2 голосов
/ 29 сентября 2010

Мне любопытно, можно ли сделать следующее

выберите идентификатор от фу где foo.bar = (выберите сумму (бар) от фу )

без использования подзапроса.

Редактировать: Чтобы уточнить, я пытаюсь сделать это с postgresql, который, кажется, не поддерживает два решения, опубликованные до сих пор.

Ответы [ 2 ]

2 голосов
/ 29 сентября 2010
Its not possible to write it without sub query
see the Below Link for more Help
http://www.postgresql.org/docs/8.1/static/tutorial-agg.html
2 голосов
/ 29 сентября 2010

Вы можете попробовать аналогичную вещь, используя соединения, хотя это менее понятно, чем подзапрос

SELECT f1.id
FROM foo f1
CROSS JOIN foo f2
WHERE f1.bar = SUM(f2.bar)
GROUP BY f1.id, f1.bar
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...