Вы можете принести таблицу client
с join
. Я думаю, что вы хотите:
select c.clientFirstName, c.clientLastName, count(*) no_books
from borrower b
inner join client c on c.clientId = b.clientId
where b.borrowDate >= '2017-01-01' and b.borrowDate < '2018-01-01'
group by c.clientId, c.clientFirstName, c.clientLastName
order by count(*) desc
limit 5
Это обрабатывает borrowDate
как столбец типа date
(или тому подобное), потому что это то, что кажется. Если это просто число, представляющее год, то вы можете вернуть условие where
к исходному состоянию.