powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / выбор книг автора с максимальным рейтингом
5 сообщений из 5, страница 1 из 1
выбор книг автора с максимальным рейтингом
    #39798027
akalend
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть три таблицы:
- Авторы ( id, name )
- Книги( id, title, reit)
- Author2Book( autor_id, book_id)

Как выбрать максимальный рейтинг автора - понятно:
Код: sql
1.
2.
3.
4.
SELECT   max(reit),     
FROM Book b,  Author2Book a
WHERE b.id  = a.book_id      -- или по одному AND author_id = 24
GROUP BY author_id              -- по всем авторам


А вот как получить самую лучшую книгу этого автора? что-то нет мыслей...
...
Рейтинг: 0 / 0
выбор книг автора с максимальным рейтингом
    #39798030
akalend
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Описа: максимальный рейтинг книги, а не автора...
...
Рейтинг: 0 / 0
выбор книг автора с максимальным рейтингом
    #39798042
akalend
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
подскажите, как выбрать id книги, с максимальным рейтингом?
а приджоинить и вытащить название книги я и сам смогу
...
Рейтинг: 0 / 0
выбор книг автора с максимальным рейтингом
    #39798373
akalend
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот что получилось, но можно ли оптимизировать???

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
select max( a.reit) as best, a2.name
from   Books a
JOIN Author2Books an2 ON ( a.id = an2.books_id )
JOIN Authors a2 ON ( a2.id = an2.author_id )

where  a.reit = ( select max(reit) from Books b, Author2Books an
      where  b.id = an.author_id  and a.id = b.id  group by an.author_id )
GROUP BY a2.name
...
Рейтинг: 0 / 0
выбор книг автора с максимальным рейтингом
    #39798811
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
akalendвот что получилось, но можно ли оптимизировать???

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
select max( a.reit) as best, a2.name
from   Books a
JOIN Author2Books an2 ON ( a.id = an2.books_id )
JOIN Authors a2 ON ( a2.id = an2.author_id )

where  a.reit = ( select max(reit) from Books b, Author2Books an
      where  b.id = an.author_id  and a.id = b.id  group by an.author_id )
GROUP BY a2.name



Вы всетаки определитесь с задачей... или одна книга с максимальным рейтингом у заданного автора
или по 1 книге с максимаьным рейтингом у ВСЕХ авторов
или еще что то...
тогда и подскажем... а то у вас заголовок не совпадает с теми запросами что вы пишите.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / выбор книг автора с максимальным рейтингом
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]