伙计我是弹性搜索的新手,并尝试从2. *迁移到5. *。
我有一个无法转换的查询。我尝试搜索谷歌,以及阅读文档,但其中的示例是非常基本的,并没有真正帮助在这里。也许有人可以帮我将以下查询转换为现代查询?我正在使用php客户端。
$query = [
'index' => 'index_name',
'type' => 'table',
'body' => [
'query' => [
'filtered' => [
'query' => [
'bool' => [
'must' => [
[
'match' => [
'_all' => [
'query' => 'zonda',
'fuzziness' => 1,
],
],
],
],
],
],
'filter' => [
[
'term' => [
'foo' => 1,
],
],
],
],
],
],
'size' => 10000,
];
答案 0 :(得分:0)
没有太多的PHP,所以无法检查它,但它应该是这样的:
$query = [
'index' => 'index_name',
'type' => 'table',
'body' => [
'query' => [
'bool' => [
'must' => [
[
'match' => [
'_all' => [
'query' => 'zonda',
'fuzziness' => 1,
],
],
],
],
'filter' => [
[
'term' => [
'foo' => 1,
],
],
],
],
],
],
'size' => 10000,
];
过滤后的查询现已消失,您可以使用bool查询的过滤器部分。