代码之家  ›  专栏  ›  技术社区  ›  pxr_64

Solr查询中的双引号

  •  2
  • pxr_64  · 技术社区  · 7 年前

    我不知道这个solr查询中的双引号是什么意思。

    q=%2B"My+helper+product"+My+helper+product . 它是一个 edismax 查询

    %2B表示“+”符号,其他+符号表示空格,因为这是一个URI请求,但我不理解双引号和重复的含义。

    我是solr的新手,刚开始的时候感觉非常棒。你能帮帮我吗?

    2 回复  |  直到 6 年前
        1
  •  3
  •   Community frankie liuzzi    4 年前

    语法因您使用的查询解析器而异,但edismax解析器支持标准lucene语法(这里使用的就是这种语法)。edismax处理程序有一个名为 qf 它告诉Solr应该搜索哪些字段(即查询的哪些字段( q )将与之竞争)。

    这个 query syntax for standard lucene queries explains that the + means 这个术语是 必修的 出席。

    “+”或必需运算符要求“+”符号后的术语存在于单个文档字段的某个位置。

    要搜索必须包含“jakarta”且可能包含“lucene”的文档,请使用查询:

    +jakarta lucene

    报价单 wraps a sequence of words that should be found -即按顺序,而不仅仅是单个术语。

    您可以通过键入字段名,后跟冒号“:”和您要查找的术语来搜索任何字段。

    例如,假设Lucene索引包含两个字段,标题和文本,文本是默认字段。如果您想找到标题为“the Right Way”的文档,其中包含文本“don’t go this Way”,您可以输入:

    title:"The Right Way" AND text:go

    其他词是为了在不按顺序出现的地方给出点击率,但由于第一个词是必需的,我认为它们所做的仅仅是给那些在词按顺序出现的地方之外多次包含这些词的文档提供更高的分数。这些词将出现在“产品”出现的地方,或内容包含的地方 product helper my .

        2
  •  2
  •   Mysterion    7 年前

    基本上,Solr中的引号用于创建不会在空格/分隔符上断开的查询。

    Solr参考:

    短语是由双引号包围的一组单词,例如

    这个问题的查询是这样的,我想让查询“我的助手产品”以及这个短语中的所有单词单独搜索 qf公司 (查询字段参数 eDisMax