检索 Solr 查询中的特定字段?
Posted
技术标签:
【中文标题】检索 Solr 查询中的特定字段?【英文标题】:Retrieving specific fields in a Solr query? 【发布时间】:2010-09-20 20:43:54 【问题描述】:我在 Jetty 上运行 Solr 实例,当我使用 Solr 管理面板进行搜索时,它会返回整个文档。我应该怎么做才能从搜索返回的每个 Solr 文档中只获取指定的字段?
【问题讨论】:
【参考方案1】:/?q=query&fl=field1,field2,field3
【讨论】:
Andrew 知道如何使用 solr autosuggest 检索字段,例如 /suggest?spellcheck.q=india&fl=count:totaltermfreq(title, 'untitled'),title。【参考方案2】:从 Solr Admin 主页,单击“完整界面”。在该页面上有一个名为“要返回的字段”的框。您可以在此处列出您想要的(逗号分隔)。 “*”表示所有字段。
【讨论】:
【参考方案3】:最好的方法是从 Admin concole 运行查询。当我们运行它时,它还提供了实际执行的 SQL 查询。只需复制查询并使用它。
关于问题:从表格中选择特定字段。在管理控制台中查找“FL”文本框。写下您要检索的字段名称,逗号分隔。点击“执行查询”按钮。 右上角的 SQL 将可用。
生成的查询:......select?fl=FIELDNAME&indent=on&q=:&wt=json
【讨论】:
【参考方案4】:http://xx.xxx.xx.xx:8983/solr/corename/select?indent=on&q=*:*&wt=json&fl=ImageID,Imagepath,Category
此链接有 fl 参数: fl 是一个字段列表,它将显示索引列表中的指定字段。
【讨论】:
虽然这可以解决问题,但including an explanation 确实有助于提高帖子的质量。请记住,您正在为将来的读者回答问题,而这些人可能不知道您的代码建议的原因。也请尽量不要用解释性的 cmets 挤满你的代码,这会降低代码和解释的可读性! 解释也不对;fl
代表 field list
- 它不会过滤任何东西 - 只需设置从索引中获取的字段。现有的答案解释了完全相同的事情。【参考方案5】:
您可以在查询中简单地传递带有必填字段名称的 fl 参数。
&fl=field1,field2,field3&query=:
您的回复文件仅包含提及的字段。
【讨论】:
以上是关于检索 Solr 查询中的特定字段?的主要内容,如果未能解决你的问题,请参考以下文章
如何编写一个 solr 查询来检索数字字段值小于指定值的所有记录?