0

对于房地产门户网站,代理商会记录每天有多少开放参观的客人出现。我正在尝试使用 sphinx api 在名为“open_house_guest_info”的 sphinx 索引中过滤访问次数最多的房屋,然后在另一个带有房屋介绍“房屋”的 sphinx 索引中搜索这些房屋 ID,并带有搜索词。

“open_house_guest_info”索引:
日期、house_id、guest_count

“房屋”索引:
house_id、house_intro

我知道如何用 MySQL 做到这一点,但我正在尝试用 Sphinx 做到这一点。如何根据从与“house_id”相关的另一个索引过滤的属性来搜索不同索引的文本?

4

1 回答 1

1

狮身人面像无法“加入”索引。您必须将所有数据放在一个索引中。

建立索引的 sql_query,可以包括 JOIN 和 GROUP BY 等。由 mysql 执行以创建单个索引。

sql_query = SELECT g.id,house_id,house_intro,REPLACE(date,'-','') as date,COUNT(g.id) AS guests FROM houses h INNER JOIN open_house_guest_info g USING (house_id) GROUP BY date,house_id

sql_attr_uint = house_id
sql_attr_uint = date
sql_attr_uint = guests

然后可以按日期、house_id 或客人过滤/分组/排序:) [在 sphinx 查询中]

于 2012-09-12T11:19:31.790 回答