2014-02-28 91 views
0

我有一個「對象」表(實際上是SQL的結果加入),數據是這樣的:Sphinx搜索與計數不同值

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

我想使用獅身人面像索引此表並返回截然不同的 category_id值,以及有多少個記錄有數據點擊,按點擊次數排序。

舉例來說,如果我用「數據」一詞搜索這個指標,我想結果是:

5, 2 hits 
6, 1 hit 

這將與分組和計數在MySQL很瑣碎,但我可以我不會用獅身人面像搜索做同樣的事情。

我的sql_query應該是什麼?我應該如何使用PHP API來獲得我需要的結果?

回答

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

不同類別的IDS將是total_found

多條記錄怎麼過的數據命中你沒有直接得到的,最簡單的方法是通過查詢來運行非組,那麼它在total_found

+0

嗨,感謝您的幫助。我試圖返回實際的類別ID作爲我的文檔ID,以及每個類別*中的對象數*。我可能會誤解,但看起來這個答案可能只會返回計數。 – Johno

+0

category_id在每個匹配中的'attrs'數組中找到。另見'setSelect' – barryhunter