我见过的狮身人面像搜索示例并没有真正使用连接。如果我有这样的模式(一本书有多个评论),
create table book ( id int auto_increment, title varchar(200), summary longtext );
create table reviews ( id int auto_increment, book_id int, review longtext );
我应该给 sphinx 什么样的查询,以便我可以搜索评论中的单词,它会返回相应的书。如果我使用常规的内部连接,则每个评论将是一个文档,并且与网站上可见的内容不对应(单页包含书籍信息和所有评论)。
你有什么建议?我是否应该为搜索文档创建一个非规范化表并使用呈现的页面作为输入,例如:
create table sphinx_input (
id int, -- corresponds 1..1 to book.id
contents longtext -- everything on the page
);
并针对书籍和评论的每次更改进行修改?