首頁 >後端開發 >php教程 >请教几个关于sphinx或coreseek的问题?

请教几个关于sphinx或coreseek的问题?

WBOY
WBOY原創
2016-06-06 20:09:58976瀏覽

把 A B C D E F G H一共8个字段索引进了sphinx(其实用了coreseek中文分词),其中ACD是全文索引的字段,剩下是属性。

问题1:
现在有个需求,就是搜索的时候没有关键词,但需要过滤,而我又不想走db,想直接在sphinx过滤,所以query的时候是空,但之前用SetFilter了我想过滤的字段和内容,发现无效,请问有办法实现这类型的需求吗?

问题2:
能否设定分词的长度,例如现在我搜一个词“家用”,结果分词成了“家”、“用”两个字,含有其中一个字的结果也给我返回来了,怎么避免呢?我在配置文件把min_word_len设置为2都没用

回复内容:

把 A B C D E F G H一共8个字段索引进了sphinx(其实用了coreseek中文分词),其中ACD是全文索引的字段,剩下是属性。

问题1:
现在有个需求,就是搜索的时候没有关键词,但需要过滤,而我又不想走db,想直接在sphinx过滤,所以query的时候是空,但之前用SetFilter了我想过滤的字段和内容,发现无效,请问有办法实现这类型的需求吗?

问题2:
能否设定分词的长度,例如现在我搜一个词“家用”,结果分词成了“家”、“用”两个字,含有其中一个字的结果也给我返回来了,怎么避免呢?我在配置文件把min_word_len设置为2都没用

1、只过滤字段,又没有关键词,干嘛不用db?
2、采用SPH_MATCH_ALL试试,不太清楚你用的什么分词。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn