Учитывая эту таблицу:MYSQL запрос с использованием ключевого слова ALL
account_number branch_name balance
A-101 Downtown 500
A-102 Perryridge 400
A-201 Brighton 900
A-215 Mianus 700
A-217 Brighton 750
A-222 Redwood 700
A-305 Round Hill 350
я должен найти, чтобы написать запрос MySQL, чтобы найти ветку (branch_name) с наибольшим средним балансом. Я пытаюсь понять, как используется ключевое слово ALL.
Я попытался следующие:
SELECT branch_name,avg(balance)
FROM account GROUP BY branch_name
WHERE avg(balance) >= ALL (
SELECT avg(balance)
FROM account GROUP BY branch_name
);
Я получаю синтаксическую ошибку рядом "ГДЕ сред (баланс)> = ALL", хотя. Помогите?
Обратите внимание, что это работает до тех пор, пока нет другой ветки, разделяющей самый высокий средний баланс, [я никогда не использую НЕКОТОРЫЕ, ВСЕ, ЛЮБЫЕ либо - но больше из незнания, чем выбор!] – Strawberry
@Strawberry. , , Только для записи вы можете заменить ключевые слова на агрегацию в подзапросе, поэтому 'x> any()' совпадает с 'x> (выберите max() ...)'. Я считаю, что последнему легче следовать. –
Ahhh - так вот ... SELECT имя_индустрии, AVG (баланс) FROM account GROUP BY имя_панели HAVING AVG (баланс)> = ALL (SELECT AVG (баланс) FROM account GROUP BY branch_name); – Strawberry