簡體   English   中英

Sphinx顯示每個類別中的一個或x

[英]Sphinx show one or x from each category

我在獅身人面像上有一個產品索引。 我按類別搜索和過濾。 我通過“ id desc”進行排序,使用該設置,我看到了最后的產品。 沒關系。 但是真正的問題是:

我想表明沒有列出一個類別,另一個類別(因為我的產品添加了一個類別,而不是另一個類別)。 我想同時列出id desc(最后一個產品優先)和隨機排序的類別。

通過設計:

id category_id name
-- ----------- ----
1       1       a
2       1       b
3       1       c
4       2       d
5       2       e
6       2       f

現在(訂單):

f-e-d-c-b-a

但我想要

f-c-e-b-d-a

我的獅身人面像代碼:

        $sphinx = new SphinxClient();
        $sphinx->SetServer("127.0.0.1", 9312);


            $sphinx->SetMatchMode(SPH_MATCH_EXTENDED2);
            $sphinx->SetRankingMode(SPH_RANK_WORDCOUNT);
           $sphinx->SetSortMode(SPH_SORT_EXTENDED, 'id DESC');



        $sphinx->SetArrayResult(true);


        $filtersArr = $this->getSphinxFilterParams($params);

        foreach ($filtersArr['filter'] as $attr => $val)
        {
            $sphinx->SetFilter($attr, $val[0], $val[1]);
        }

反正有做到這一點嗎?

sphinx論壇上有一個與此相關的主題: http ://sphinxsearch.com/forum/view.html?id=10546

盡管大多數情況下可能是sphinxAPI(通過未公開的setOuterSelect),但建議遷移到SphinxQL,因為它最容易使用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM