我使用这种模式:
http://localhost:8983/solr/select/?q=hello&wt=json&json.wrf=?&indent=true&hl=true&hl.fl=title
它返回如下:
?({
"response":{"numFound":100,"start":0,"docs":[
{
"id":"1234",
"title":"Something Hello"
..
..
},
... bla bla, to the end
]
})
很明显,标题中显示100 records found
,但{ bla bla... }
项内的just 10
确实在中。它实际上是索引中的100项。它必须完全显示100。
它只显示前10个项目吗? 我在模式中错过了什么?
答案 0 :(得分:4)
100是Solr找到的记录总数,但默认情况下,它一次只返回10个。
尝试将&rows=100
添加到网址,一次获取所有100个结果。
编辑:在真实的应用中,您可能希望在页面中获取结果,这样您就不会耗尽内存,试图立即获取数十亿个结果。在这种情况下,您可以合并start
和rows
选项。
例如,一次获取20个结果:
第一个请求将使用&start=0&rows=20
第二个请求将使用&start=20&rows=20
......依此类推,直到你获得了所有结果。
这类似于在SQL中使用OFFSET
和LIMIT
关键字,如果您熟悉这些关键字。