В таблице marks есть поле usr с кодом пользователя и поле mrk с оценкой. Для упрощения, другие поля не рассматриваются. Задача: вывести пользователей, у которых такой же уникальный набор оценок, как у пользователя u2.
Вариант запроса, решающего задачу:
with agg as
(select distinct mrk
from marks
where usr = 'u2')
select m.usr
from marks m
left join agg a on a.mrk = m.mrk
having count(m.mrk) = count(a.mrk)
and m.usr <> 'u2'
group by m.usr;
Пример данных таблицы marks:
Комментариев нет:
Отправить комментарий