elasticsearch - 在 Elasticsearch 中搜索和匹配多个字段?
问题描述
我正在使用 Elasticsearch 搜索多个字段。我想使用 operator 匹配多个字段AND
。
我的代码在这里。
http://192.168.1.102:9200/storedevents/_search
GET
{
"query": {
"bool": {
"must": [
{
"term": {
"aggregateid": 163
}
},
{
"term": {
"entity": "Fornecedor"
}
}
]
}
}
}
我的数据:
id:0bad3af6-0a2b-4cce-a55a-6a5b19ced03f data:{"Id":163,"CreatedAt":"2019-11-07T10:48:07.0809551","UpdatedAt":"2019-11-13T17:12:32.0463481-03:00","DeletedAt":null,"PessoaId":163,"StatusFornecedorId":2,"FornecedorPrincipalId":303,"IntegracaoId":2511361,"IdReduzido":"SFLTDA","Ativo":true,"RazaoSocial":"SINTER FUTURA LTDA","NomeFantasia":"SINTER","Cnpj":"74222563000241","Timestamp":"2019-11-13T17:12:32.1168883-03:00","Entity":"Fornecedor","MessageType":"FornecedorEditedEvent","AggregateId":163} user: - timestamp:Nov 13, 2019 @ 18:12:32.128 entity:Fornecedor messagetype:FornecedorEditedEvent aggregateid:163
_id:0bad3af6-0a2b-4cce-a55a-6a5b19ced03f _type:storedevent _index:storedevents _score: -
解决方案
字段名称区分大小写。我假设您自动映射您的文档(因此您要查找的字段已编入索引)
{
"query": {
"bool": {
"must": [
{
"term": {
"AggregateId": 163
}
},
{
"term": {
"Entity": "Fornecedor"
}
}
]
}
}
}
推荐阅读
- c++ - 在不使用迭代器的情况下添加位于向量中的整数的总和,总和是第一个和第二个元素的总和,依此类推
- javascript - 表单验证中的“超出最大更新深度”
- c# - Azure AD GraphServiceClient 扩展不起作用
- flopy - 旋转图 - 软盘
- c# - 在 powershell 类中使用 dotnet 接口
- java - 使用 Springboot 在托管服务器上上传图像
- javascript - Javascript 在对象数组中查找所有出现的名称并创建新的唯一数组
- ios - 在 didRegisterForRemoteNotification 中执行自定义操作时崩溃
- reactjs - 成功操作完成后更新一些组件
- sql - 如何在 DB2 LUW 的存储过程中使用 COMMIT