Исключить дубликаты в запросе
имеется запрос
реализовано первое предложение.
select req1.n_post, req1.n_izd, req1.sum, req2.max
--ищем всех поставщиков, которые поставили максимум для изделия
from (select --ищем все суммы
n_post, n_izd, sum(kol)
from spj
group by n_izd, n_post
) req1
join (select --ищем максимальную сумму для изделия
n_izd, max(tmp.sum)
from (select --ищем все суммы(был выше)
n_post, n_izd, sum(kol)
from spj
group by n_izd, n_post
) tmp
group by n_izd
) req2
on req1.n_izd=req2.n_izd
where sum=max
order by 1
с результатом.
Но как исполнить эти 'если' не могу понять. Как отсюда исключить дубликаты по n_izd (строка 1 и 2) на основании сравнения значении строк?
Исходные таблицы (https://i.stack.imgur.com/yKxQ8.jpg)
Ответы (1 шт):
Автор решения: Qwerty
→ Ссылка
Довольно сложно понять обозначения, но зачем вам удалять дубликаты если нужно выбрать только одного поставщика? Можно ведь поставить в конце LIMIT 1 и получить того самого, первого по алфавиту.
PS:я не могу коментировать, поэтому пишу здесь(

