результат поиска с вложенностью таблиц

есть две таблицы:FilmEntity и ActorEntity.
ActorEntity связана с FilmEntity с отношением многие к одному, так как у одного фильма может быть много актеров.
при запросе фильма в базе через ORM на выходе получаю вот такие данные:

{
    id: 123, // id фильма
    actors: [ // массив актеров, которые играют в этом фильме
        {
           id: 23423423,
           id: 4234234234
        }
    ]
}

здесь всё отлично и красиво.
далее я успешно проиндексировал свою базу через Sphinx, и при поиске одного фильма получаю ответ из двух записей:

[
    {
        film_id: 123,
        actor_id: 23423423
    },
    {
        film_id: 123,
        actor_id: 4234234234
    }
]

Вопрос: как мне сделать, чтобы Sphinx отдавал такую красивую вложенность в одном объекте, как и ORM?
Буду рад любому комментарию, совету, статье на эту тему.


Ответы (1 шт):

Автор решения: Manticore Search
  1. индексировать так, чтобы actor_id был MVA или JSON атрибутом, а один документ - один фильм, а не пара фильм-актёр
  2. использовать группировку по film_id и GROUP_CONCAT(), правда тогда id актёров будут строкой и нужно будет в приложении разделить на элементы
→ Ссылка