我有很多文档可供ElasticSearch搜索。这些文件分为几类。
有什么意义?
也必须在某些类别的文件中进行全文检索。
示例数据:
{
fulltext: "This is a Invoice from Project TestProject...",
id: 1235456
}
样本类别:
[{
name: "invoices",
filter: {
match: "invocie"
}
},
{
name: "testproject files",
filter: {
match: "testproject"
}
}]
招呼 菲利普
答案 0 :(得分:1)
只需在文档类型中添加字符串字段,并在其中存储每个文档的类别。然后,您可以在搜索查询中对该字段进行过滤,以限制与特定类别的匹配。
您的文档有这样的内容:
{
"fulltext": "This is a Invoice from Project TestProject...",
"category": "Invoice"
}
并在“发票”类别中搜索文本“testproject”的文档:
GET /_search
{ "query":
{
"filtered": {
"query": { "match": { "fulltext": "testproject" }},
"filter": { "term": { "category": "invoice" }}
}
}}