Преобразование агрегатных операторов из SQL в реляционную алгебру

У меня написано несколько SQL-запросов, которые я хочу преобразовать в реляционную алгебру. Однако в некоторых запросах используются агрегирующие операторы, и я не знаю, как их преобразовать. Примечательно, что они используют операторы COUNT и GROUP BY .. HAVING.

Вот схема:

Моряки (с.и.д., имя, рейтинг) Запасы (с.и.д., предложение, цена) Лодки (предложение, имя)

Вот пример того, что я делаю: найдите ставки и названия всех лодок, зарезервированных ровно 2 моряками.

SELECT B.bid, B.bname
FROM Boats B, Reserves R
WHERE B.bid = R.bid
GROUP BY R.bid
HAVING 2 = (SELECT COUNT(*)
FROM Reserves R2
WHERE R2.bid = B.bid);

Допустимые операции реляционной алгебры: выбор, проекция, объединение, условное объединение, переименование, объединение, пересечение, перекрестное произведение, деление

Ответы на вопрос(3)

Ваш ответ на вопрос