0

我有一个这样的查询,它在 php 中,使用 elastica 库

$queryDefinition = [
        'query' => [
            'bool' => [
                'must' => [
                    [
                        'query_string' => [
                            'default_field' => '_all',
                            'query' => $term
                        ]
                    ]
                ],
                'must_not' => [],
                'should' => []
            ]
        ],
        //'from' => 0,
        //'size' => 50,
        'sort' => [],
        'facets' => [
            'types' => [
                    'terms' => ['field' => '_type']
                ]
            ]
    ];

我知道您可以使用 REST api 针对多个索引和类型运行查询。

我想针对类型和索引的变量计数运行上述查询。是否可以使用 json 查询样式?

如果不是,我如何将该查询转换为 REST 样式?

谢谢

4

1 回答 1

0

这是 curl 的示例 - 其中 sales 是我的索引,而 order 是我的类型(如果您需要多种类型,请使用逗号分隔值,例如 ../sales/order,order1/_search ..),我使用了数据中的 3 个字段即 id、名称和状态,以及名称上的查询字符串,例如“shoh”

curl -XGET 'localhost:9200/sales/order/_search?pretty=1' -d '
{
  "query":
  {
     "bool":
     {
       "must":[{"query_string":{"query":"shoh*"}}]
     }
 },
 "fields":["id","name"],
 "facets":{"Facet Result":{"terms":{"field":"status"}}}
}
'
于 2012-12-12T12:21:42.293 回答