繁体   English   中英

PHP Elasticsearch查询

[英]PHP Elasticsearch Query

我正在尝试构建一个小型Web应用程序以演示Elasticsearch的功能,但是我遇到了查询问题。 我的目标是在所有索引和字段中搜索一串关键字。 我目前所拥有的似乎只搜索AttachmentBody ,因为当我搜索BugID xyzAttachmentTitle xyz什么都没有显示。 非常感谢您提供的任何帮助!

<?php

require_once 'es/esconnect.php';

if (isset($_GET['q'])){
    $q = $_GET['q'];
    $query = $Client->search([
        'body' =>[
            'query' =>[
                'bool' =>[
                    'should' =>[
                        'match' => ['BugID' => $q],
                        'match' => ['AttachmentTitle' => $q],
                        'match' => ['AttachmentBody' => $q]
                    ]
                ]
            ]
        ]
    ]);

    if($query['hits']['total'] >=1){
        $results = $query['hits']['hits'];
    }
}

?>

BugID:CSCzo56214

附件标题:15624_note_21844

AttachmentBody:这是一个注释


BugID:CSCzo56214

附件标题:15624_description_21846

AttachmentBody:这是一个描述


工作查询:

    'body' =>[
        'query' =>[
            'bool' =>[
                'should' => array(
        array('match' => array('BugID' => $q)),
        array('match' => array('AttachmentTitle' => $q)),
        array('match' => array('AttachmentBody' => $q))
    )

功能查询:

'body' => [
    'query' => [
        'bool' => [
            'should' => [
                ['match' => ['BugID'           => $q]],
                ['match' => ['AttachmentTitle' => $q]],
                ['match' => ['AttachmentBody'  => $q]]
            ]
        ]
    ]
]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM