Я получил таблицу базы данных 'books' и таблицу 'reviews'. Одна книга может содержать много рецензий (один ко многим). Я хочу, чтобы данные возвращались во вложенном многомерном массиве, но я получаю все различные строки, возвращаемые с помощью запроса JOIN. Разве эта производительность и пропускная способность неэффективны? Сервер (NodeJS) должен загрузить много дубликатов данных. Есть ли другой способ структурировать отношения hasmany в MySQL, не загружая дубликаты данных? Или мне нужно переключиться на PostgreSQL например?
Если вы не хотите дублирования значений из таблицы books, выполните два запроса:
books
SELECT ... FROM books WHERE id = ?;
Затем отдельный запрос:
SELECT ... FROM reviews WHERE book_id = ?;
Не каждая операция должна выполняться в одном SQL запросе!