• Как (быстро) выбрать книги, у которых есть все нужные авторы?

    @asdzxx Автор вопроса
    Ипатьев,
    > В вопросе ничего не написано про индексы. Понятно что без индексов будет тормозить.
    В вопросе ясно написано, что стоит составной индекс (author_id, book_id).

    > Вы план запроса хоть смотрели? Про команду EXPLAIN слышали?
    Да, смотрел. Этот индекс и использовался в запросе.

    > Теперь ещё осталось понять, зачем нужен limit 10000 в запросе
    Для того, чтобы протестировать его скорость работы на разных объемах данных.
  • Как (быстро) выбрать книги, у которых есть все нужные авторы?

    @asdzxx Автор вопроса
    Ипатьев, написано прямо в вопросе:
    Запрос работает, но уже на сотнях тысяч записей в таблице начинает выполнятся несколько секунд (естественно, с проставленным индексом - (author_id,book_id)).


    BasiC2k,
    Нужно вывести список книг, которые написали оба (или все три, или все N) авторов. ("Книги, которые написали Керниган и Ритчи вместе").

    Akina,
    Действительно, с другим порядком полей стало работать значительно быстрее (до секунды при 5 млн строк в таблице и limit 10000 в запросе). Спасибо.