【问题标题】:solr search for all possible combinations of a textsolr 搜索文本的所有可能组合
【发布时间】:2016-07-19 09:43:22
【问题描述】:

您好,我有一个输入“Stack Exchange”的 solr 文本字段。如何通过 solr 过滤器搜索我的输入的所有可能组合,例如“Exchange Stack”和“Stack Exchange”

【问题讨论】:

    标签: apache solr


    【解决方案1】:

    很简单,你只需要设置 solr q.op = AND

    【讨论】:

    • 感谢您的回复,但在 solr admin 中添加 q.op 的位置
    • 找到原始查询参数项,然后将 q.op=AND 放入输入文本中。
    • 上述操作得到“msg”:“未定义字段文本”错误
    【解决方案2】:

    使用不带引号的普通查询q=Stack Exchange。它同时匹配“Exchange stack”和“Stack Exchange”

    默认情况下 solr 使用 OR 运算符。

    如果您在查询字符串"Stack Exchange" 周围使用引号,它是一个短语查询,它会为您提供具有完全“堆栈交换”的文档的结果

    【讨论】:

    • 但是当我给出不带引号时,我得到以下错误。"error": { "msg": "undefined field text", "code": 400 }
    • 您的 schema.xml 文件应该包含字段名称文本的字段定义。检查您的架构文件。您使用的是哪个 solr 版本。?
    • 我没有带文本的 ant 字段,但是 mu 配置文件有 explicit10文本
    • 好的。在架构文件<copyField source="fieldname" dest="text"/> 中输入新的复制字段,将字段名称更改为文档中具有堆栈交换值的字段名称。并重新启动 solr。它有效
    猜你喜欢
    • 2015-08-28
    • 1970-01-01
    • 1970-01-01
    • 2015-03-16
    • 1970-01-01
    • 2019-02-25
    • 1970-01-01
    • 1970-01-01
    • 2016-04-05
    相关资源
    最近更新 更多