У меня есть FNAME, LNAME и Address, по которым я хочу искать. Я хочу искать
FName = jo
LName = ro
Address = 34
это должно дать мне все записи, которые имеют FName и LName, начиная с jo и ro (LIKE)
так что если бы это был mysql, это было бы FNmae Like jp% And LName Like ro% AND Address Like 34%
так что у меня пока это
$params = [
'index' => $this->arrayES['index'],
'type' => $this->arrayES['type'],
'body' => [
'query' => [
'match' => ["FName"=>"Jo"]
]
]
];
Проблема в том, что это дает мне только JO
и когда я пытаюсь добавить LName и адрес
'match' => ["FName"=>"Jo", "LName"=>"ro", "Address"=>"34"]
что ошибки.
Нужна помощь
Спасибо
** Ожидаемые результаты **
FName LName Address
Jo Ro 34 W Ave
John Rosa 3456 Havana Ave
Johnny Ronnatte 341 House Rd
Есть способ, который позволяет указать очень похожий запрос к вашему запросу SQL, используя query_string
запрос:
$params = [
'index' => $this->arrayES['index'],
'type' => $this->arrayES['type'],
'body' => [
'query' => [
'query_string' => [
'query' => 'FName:Jo* AND LName:ro* AND Address:34*'
]
]
]
];
Других решений пока нет …