Хорошо, при условии, что вам нужна только одна запись на книгу, что вы хотите первую категорию, а categorydesc
числовой, вам понадобится что-то вроде этого (возможно, вам придется поиграться со спецификой)
select distinct b.bookid, b.author, b.title, (min)c.categorydesc
from book b
join bookscategories bc on b.bookid = bc.bookid
join category c on bc.categoryid = c.categoryid
Если categorydesc не всегда числовой, то вам нужно написать предложение Where
, которое, по сути, будет вторым оператором выбора, где вы извлекаете самый низкий CategoryId для каждой отдельной книги.