我在Ajax调用中使用了以下POST请求但是我无法添加其他搜索条件。我还希望能够通过通配符搜索许多其他字段。示例firstName为“j *”,lastName为“p *”。如何为此类查询添加另外两个条件。我知道如何在curl请求中执行此操作时,它是一个GET请求,但不知道如何将其作为POST请求。
在GET请求中,我只想添加以下内容。
+%2bfirstName:j*
POST请求
{
"query": {
"filtered": {
"query": {
"range": {
"date": {
"include_lower": true,
"include_upper": false,
"from": "1999-01-01",
"to": "2002-01-01"
}
}
},
"filter": {
"term": {
"locationNumber": "453"
}
}
}
}
}
答案 0 :(得分:2)
您可以使用bool query在查询中组合多个条件。例如:
{
"query": {
"filtered": {
"query": {
"bool": {
"must": [
{
"range": {
"date": {
"include_lower": true,
"include_upper": false,
"from": "1999-01-01",
"to": "2002-01-01"
}
}
},
{
"wildcard": {
"firstName": "j*"
}
}
]
}
},
"filter": {
"term": {
"locationNumber": "453"
}
}
}
}
}