У меня возникли проблемы с копированием моего запроса на удаление MySQL в эластичном поиске, я использую эту документацию: http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/docs-delete-by-query.html с использованием оболочки PHP для Laravel.Упругий поиск deleteByQuery несколько терминов
Я пытаюсь это:
$this->es->deleteByQuery([
'index' => 'users',
'type' => 'user',
'body' => [
'query' => [
'term' => ['field1' => $this->field1],
'term' => ['field2' => $this->field2],
'term' => ['temp' => 0]
]
]
]);
Его предполагают, чтобы быть DELETE FROM пользователей WHERE field1 = $ this-> field1 И field2 = $ this-> field2 ...
I» m, что затрудняет перевод синтаксиса WHERE AND в Elastic Search.
Любая помощь?
использовать 'bool' запрос для объединения терминов. – Ashalynd
Я думаю, что сейчас я зашел за борт. У меня есть body => query => filter => filter => bool => must => term, term, term. Нужен ли мне фильтр => фильтрованные массивы? – Anthony
Вам не нужен фильтр. существует запрос bool без фильтра: http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-bool-query.html – Ashalynd