solr找到與查詢結果相似的文件

2021-09-01 19:21:58 字數 1322 閱讀 4394

找到與查詢結果相似的文件:

mlt.fl:按照結果文件的哪乙個field求相似。

mlt.mintf:結果文件中的本field的某乙個詞出現的tf大於此值,才以此詞求相似。

mlt.mindf:通上,不過是df。

自定義的顯示結果(非xml):

首先定義渲染器和名字:

其次定義請求的處理器(包括顯示的結果,行數,預設的查詢域,查詢的格式等等):

velocity

browse

layout

solr cookbook example

dismax

*:*10

*,score

name

---------------------------------

匹配相似(morelikethis)

他的作用是查詢相似的document。

首先在 solrconfig.xml 中配置 morelikethishandler

然後我就可以請求 http://localhost:8080/solr/mlt?q=id:7&mlt.true&mlt.fl=name&mlt.mintf=1&mlt.mindf=1

上面請求的意思 查詢 id 為 7 的 document ,然後返回與此 document 在 name 欄位上相似的其他 document。需要注意的是 mlt.fl 中的 field 的 termvector=true 才有效果

當然 mlt.fl 也可以新增多個field ,用逗號隔開就行了

list relationlist = new arraylist();

query = new solrquery();

query.setquery("title:"+ query_char.tostring()+" and type:2222");

query.addfield("title");

query.setstart(0);

query.setrows(10);

query.setparam("mlt", "true");

query.setparam("mlt.fl", "title");

query.setparam("mlt.mintf", "100");

query.setparam("mlt.mindf", "1");

try

} catch (solrserverexception e)

Solr5 3 1 SolrJ查詢索引結果

通過solrj獲取solr檢索結果 1 通過solrparams的方式提交查詢引數 2 通過solrquery提交引數 設定高亮 query.setquery name datou query.sethighlight true 開啟高亮元件或用query.setparam hl true quer...

Solr5 3 1 SolrJ查詢索引結果

通過solrj獲取solr檢索結果 1 通過solrparams的方式提交查詢引數 2 通過solrquery提交引數 設定高亮 query.setquery name datou query.sethighlight true 開啟高亮元件或用query.setparam hl true quer...

mysql 對查詢到的結果進行去重

於是我改動了一下sql select distinct sd1.ship address name,a1.ship address id,group concat a1.ship date b1.lot number,a1.company id from outstock so headers a1...