У меня есть индекс с именем users
Когда я делаю запрос на http://localhost:9200/users/_search?pretty=true
со следующим запросом:
curl -X GET "localhost:9200/users/_search?pretty=true" -H 'Content-Type: application/json' -d'
{
"query": {
"query_string": {
"query" : "firstName: Daulet"
}
}
}'
запрос возвращает двух пользователей со следующими именами:
firstName: Daulet
firstName: Daulet Nurlanuly
Как сделать так, чтобы запрос строки запроса возвращал документ с firstName: Daulet
?
Я посмотрел, что Elasticsearch использует синтаксис запроса Apache Lucene и что для строгого поиска мне нужно сделать следующее, заключив запрос в кавычки следующим образом:
firstName: "Daulet"
Но оно уже заключено в кавычки
Как мне это сделать, используя только Query String Query?
** ОБНОВЛЕНИЕ **
Ответ, который я получаю, когда делаю GET-запрос на http://localhost:9200/users:
{
"users": {
"aliases": {},
"mappings": {
"userentity": {
"properties": {
"firstName": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"id": {
"type": "long"
},
"language": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"lastName": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
}
}
}
},
"settings": {
"index": {
"refresh_interval": "1s",
"number_of_shards": "5",
"provided_name": "users",
"creation_date": "1530245236170",
"store": {
"type": "fs"
},
"number_of_replicas": "1",
"uuid": "IlE1Ynv2Q462LBttptVaTg",
"version": {
"created": "5060999"
}
}
}
}
}