Les exemples que j'ai vus pour la recherche sphinx n'utilisent pas vraiment les jointures. Si j'avais un schéma comme celui-ci (un livre a plusieurs critiques),sphinx et associations un-à-plusieurs
create table book (id int auto_increment, title varchar(200), summary longtext);
create table reviews (id int auto_increment, book_id int, review longtext);
Quel genre de requête dois-je donner à sphynx afin que je puisse rechercher les mots dans l'examen et il renverra le livre correspondant. Si j'utilise une jointure interne régulière, chaque révision sera un document unique et cela ne correspond pas à ce qui est visible sur le site (une seule page contient des informations sur le livre et toutes les critiques).
Que suggérez-vous? Dois-je créer une table dénormalisé pour les documents de recherche et utiliser la page rendue en entrée .: par exemple
create table sphinx_input (
id int, -- corresponds 1..1 to book.id
contents longtext -- everything on the page
);
et modifier ce pour chaque changement de livres et de revues?
Merci! J'ai installé le plugin Thinking Sphinx pour les rails pour voir comment il le fait, et en effet il le fait avec GROUP_CONCAT. – lmz
J'ai écrit cela, c'est pourquoi la suggestion ci-dessus est la même;) – pat