根据字段值提高solr结果

时间:2019-04-22 04:02:12

标签: solr lucene solrj

我是solr的新手,正在尝试从中获取结果。我想要的结果与我的短语ex:“ test test1 test2”以及任何包含这些关键字的文档完全匹配,所以要完全匹配和部分匹配。

我几乎可以使用dismax实现它。现在我希望基于某个字段值对结果进行排序/增强,例如:cat:A,然后cat:B然后cat:C,我也希望首先对完全匹配的结果应用排序,然后对部分匹配的结果进行排序。 / p>

索引数据为:

[
  {
    "id": "001",
    "name": "test test1 test2 Z",
    "price": 12.9,
    "cat": "A"
  },
  {
    "id": "002",
    "name": "test test1 test2 X",
    "price": 91.5,
    "cat": "B"
  },
  {
    "id": "003",
    "name": "test test1 test2 R",
    "price": 45.5,
    "cat": "C"
  },
  {
    "id": "004",
    "name": "test test1 test2 C",
    "price": 78.67,
    "cat": "B"
  },
  {
    "id": "005",
    "name": "data",
    "price": 91.5,
    "cat": "A"
  },
  {
    "id": "008",
    "name": "test test1 test2 D",
    "price": 45.09,
    "cat": "A"
  },
  {
    "id": "009",
    "name": "test test1 test2 B",
    "price": 34.09,
    "cat": "B"
  },
  {
    "id": "010",
    "name": "test test1 test2 A",
    "price": 39.19,
    "cat": "C"
  },
  {
    "id": "011",
    "name": "test this data",
    "price": 89.19,
    "cat": "A"
  },
  {
    "id": "012",
    "name": "this is my data",
    "price": 89.19,
    "cat": "C"
  },
  {
    "id": "013",
    "name": "test1 is this data title",
    "price": 89.19,
    "cat": "A"
  }
]

请帮助。谢谢。

0 个答案:

没有答案