Выберите 5 лучших клиентов с балансом (: name,: balance) и укажите других с именем Other и суммой баланса - PullRequest
0 голосов
/ 02 июля 2018

Нужна помощь с запросом активной записи, у меня есть таблица клиентов с полями имени и баланса.

Как я могу сделать запрос, который будет возвращать 6 значений, первые 5 - это лучшие клиенты по балансу, а 6-е - сумма всех остальных?

необходимо выбрать имя и баланс, для других это будет произвольное имя '' Другое

1 Ответ

0 голосов
/ 02 июля 2018

Divide et impera: сделайте два обзора, затем сложите результаты вместе

select * 
from ( select * from view_top_5 
                                union 
       select * from view_sum )

где view_top_5 - это представление (или подзапрос), который дает вам 5 лучших клиентов, view_sum - это запрос, дающий вам сумму. Чтобы получить «все другие », вы можете построить свой запрос из этого скелета:

-- skeleton for view "view_sum"
select <what you need> 
from mytable 
where customer_id not in (select client_id 
                        from view_top_5)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...