Elasticsearch通过qyery和完全匹配参数查找

时间:2018-07-01 18:28:21

标签: php elasticsearch laravel-5

有些索引包含以下字段:

'index' => 'material',
'type' => 'post',
'id' => $post->id,
'body' => [
    'material_title' => $post->material_title,
    'material_body' => $post->material_body,
    'region' => $post->region_code,
]

之后,我有2个输入参数:文本查询-例如“今天所有好消息”和区域代码。

搜索应在3个字段(material_title,material_body,region)上执行,其中一个字段(区域代码)必须完全相同。

现在我的搜索参数:

$query = [
            'multi_match' => [
                'query' => $request->q,
                'fuzziness' => 'AUTO',
                'fields' => ['material_title', 'material_body'],
            ],
        ];

    $parameters = [
        'index' => 'material',
        'size' => 20,
        'from' => 0,
        'type' => 'post',
        'body' => [
            'query' => $query
        ]
    ];

您能给我一些例子或建议来实现这种逻辑吗? 谢谢!

0 个答案:

没有答案