小编use*_*823的帖子

匹配 SOLR 中多值字段查询中的所有值

我有一个SOLR命名语言的字符串 multiValued 字段,并且我希望查询仅返回精确匹配,其中查询中的所有语言都在 multiValued 字段中。

例如,假设我有三个文档:

 "languages": [
          "English",
          "Russian",
          "Swedish"
        ],

"languages": [
          "English",
          "Japanese",
          "Russian",
          "Spanish",
          "Thai"
        ],

"languages": [
          "English",
          "Spanish"
        ],
Run Code Online (Sandbox Code Playgroud)

如果我要查询英语俄语,我应该只返回前两个文档。以下是所使用的查询的一些示例:

q=语言:“英语”和语言:“俄语”

q=语言:(“英语”和“俄语”)

q=语言:("英语","俄语")

q=语言:(“俄语”“英语”)

在所有情况下,这些都会返回包含EnglishRussian 的所有记录。我可能忽略了一些明显的事情,但我四处搜索并没有发现任何可以解释这种行为的东西。

solr

5
推荐指数
1
解决办法
5462
查看次数

标签 统计

solr ×1