dismax 查询解析 - mm 属性

dismax query parse - mm attribute

  "mm":"2",
  "q":"IBASEDESCRIPTION:(ankor sunnyvale tokyo^3 london labs)",
  "defType":"dismax",
  "fl":"score, IBASEDESCRIPTION",
  "q.op":"AND",
  "rows":"3",
  "debug.explain.structured":"true",
  "debugQuery":"on"

这是我在回复中看到的 header。

mm=2 这意味着 2 个可选子句应该匹配。 q.op 是 AND - 我假设子句之间的条件是 AND

我希望以下字段不匹配:

Level 3 Communications-london
akamai-level 3-london

但它们是结果的一部分。

谁能帮我理解这里的行为?

我怀疑是因为tokyo字段中的^3。但这就是推动因素。

mm=2 并不意味着两个可选子句应该匹配——它意味着两个子句应该匹配。 q.op does not take effect when mm is set.

If no 'mm' parameter is specified in the query, or as a default in solrconfig.xml, the effective value of the q.op parameter (either in the query, as a default in solrconfig.xml, or from the defaultOperator option in the Schema) is used to influence the behavior.

如果没有看到对字段的分析和索引的实际值,很难说为什么包含这些特定条目(调试查询将包含有关每个字段命中的术语及其对得分)。

您还应该在此处使用 qf 而不是在使用 dismax 处理程序时出现字段名称。