Sphinx使用计数搜索不同的值

时间:2014-02-28 16:05:50

标签: sphinx

我有一个“对象”表(实际上是SQL连接的结果),其数据如下:

ID, content, category_id
1, some searchable data, 5
2, some more data, 6
3, more data, 5
4, another example, 7

我想使用Sphinx为此表编制索引并返回 distinct category_id值,以及有多少记录有数据命中,按命中数排序

例如,如果我使用术语“数据”搜索此索引,我希望结果为:

5, 2 hits
6, 1 hit

对于MySQL中的分组和计数,这将是非常微不足道的,但我无法通过Sphinx搜索来做同样的事情。

我的sql_query应该是什么?我应该如何使用PHP API来获得我需要的结果?

1 个答案:

答案 0 :(得分:1)

 $cl->SetGroupBy( "category_id", SPH_GROUPBY_ATTR, "@count desc" );

不同的类别ID 将位于total_found

有多少记录有数据点击你没有直接获取,最简单的方法是通过查询运行非组,然后它在total_found