获取 Solr 中多值字段中所有不同值的列表
Get list of all distinct values in multivalued field in Solr
我在 Solr 中有从 postgres 数据库导入的数据。文档看起来像这样(大大简化):
"docs": [
{
"id": "1",
"strings_ss": [
"abc",
"bcd",
"efg",
],
"_version_": 1546754105942212600
},
{
"id": "2",
"strings_ss": [
"abc",
"hig",
],
"_version_": 1546754105942212600
},
{
"id": "3",
"strings_ss": [
"bcd",
"aaa",
],
"_version_": 1546754105942212600
}
]
我想获得 strings_ss
中的唯一值列表
"abc","bcd","efg","hig","aaa"
对于单个值字段,我正在使用分组。但是,对于多值字段失败并出现错误:can not use FieldCache on multivalued field:
从 Solr 获取此列表的最佳方式是什么?
您可以使用 solr facet 查询来获取字段的唯一值。它将为您提供字段和频率的唯一值(没有文档具有该唯一值)。欲了解更多信息,请查看下面的链接,
试试这个
http://localhost:8983/solr/core/select?q=*&facet=true&facet.field=strings_ss
除分面之外的另一种选择是像这样使用 LukeRequestHandler:
http://localhost:8983/solr/core/admin/luke?wt=json&fl=strings_ss&numTerms=....
并阅读 topTerms
属性
我在 Solr 中有从 postgres 数据库导入的数据。文档看起来像这样(大大简化):
"docs": [
{
"id": "1",
"strings_ss": [
"abc",
"bcd",
"efg",
],
"_version_": 1546754105942212600
},
{
"id": "2",
"strings_ss": [
"abc",
"hig",
],
"_version_": 1546754105942212600
},
{
"id": "3",
"strings_ss": [
"bcd",
"aaa",
],
"_version_": 1546754105942212600
}
]
我想获得 strings_ss
"abc","bcd","efg","hig","aaa"
对于单个值字段,我正在使用分组。但是,对于多值字段失败并出现错误:can not use FieldCache on multivalued field:
从 Solr 获取此列表的最佳方式是什么?
您可以使用 solr facet 查询来获取字段的唯一值。它将为您提供字段和频率的唯一值(没有文档具有该唯一值)。欲了解更多信息,请查看下面的链接,
试试这个
http://localhost:8983/solr/core/select?q=*&facet=true&facet.field=strings_ss
除分面之外的另一种选择是像这样使用 LukeRequestHandler:
http://localhost:8983/solr/core/admin/luke?wt=json&fl=strings_ss&numTerms=....
并阅读 topTerms
属性