当前位置: 首页 > 知识库问答 >
问题:

基于Laravel框架的弹性搜索查询

浦毅
2023-03-14

我对弹性搜索完全陌生。我在试着从弹性搜索中取记录。

$params = Array
(
    [index] => elastic_index
    [size] => 10
    [body] => Array
        (
            [query] => Array
                (
                    [bool] => Array
                        (
                            [must] => Array
                                (
                                    [match] => Array
                                        (
                                            [uniqueField] => uniqueValue
                                        )

                                )

                            [filter] => Array
                                (
                                    [range] => Array
                                        (
                                            [intValue] => Array
                                                (
                                                    [lte] => 120
                                                )

                                        )

                                    [terms] => Array
                                        (
                                            [type] => Array
                                                (
                                                    [0] => some
                                                    [1] => values
                                                 
                                                )

                                        )

                                )

                        )

                )

        )

)
$data = $Elasticsearch\ClientBuilderObject->search($params);

我查了文件,但找不到任何解决办法。如果你在这里给我一些提示或一些网站,我可以解决我的问题,我将非常感谢。

共有1个答案

云飞翮
2023-03-14

我猜你是在建立这样的数组

"filter" => [
    "range" => [
        "intValue" => [
            "lte" => 120
        ]
    ],
    "terms" => [
        "type" => ["some", "values"]
    ]
]

你能试着改成这个吗?

"filter" => [
    [
        "range" => [
            "intValue" => [
                "lte" => 120
            ]
        ]
    ],
    [
        "terms" => [
            "type" => ["some", "values"]
        ]
    ]
]
 类似资料:
  • 我正在开发JSF项目并将Elastic Search与本机JavaApi(不是Jest)一起使用。我在elasticsearch索引映射中为高级全文搜索定义了分析器和nGram过滤器。如何使用java api进行此查询定义?

  • 我有以下格式的弹性搜索文档 } } 我的要求是,当我搜索特定字符串(string.string)时,我只想获得该字符串的FileOffSet(string.FileOffSet)。我该怎么做? 谢谢

  • 我正在LDAP服务器上工作。它有弹性搜索。我必须用一些Javascript代码(JSON格式)发送查询。 这是我的查询: 我试图打印所有结果,其中“server”=“server\u name”(该字段是server:server\u name…)。我认为关于弹性搜索的文档太小了。我找到了一些文档,但都是一样的,对新用户没有帮助。这个例子太简单了。 此查询返回所有结果,包括任何筛选器。 Ps:这就

  • 我使用的是spring data elasticsearch,当我使用@query注释时,将代码与实际的JSON elasticsearch查询关联起来要容易得多,如本链接参考中的示例所示: https://www.programcreek.com/java-api-examples/index.php?api=org.springframework.data.elasticsearch.anno

  • 我刚加入弹性搜索公司。而不知道如何在JSON请求中对索引和an类型发出正确的请求?(所以我不想像localhost:9200/myindex/mytype/_search那样在URL中使用索引和类型,而是向localhost:9200/_search发出JSON请求) 我试过这样的东西。但我得到的结果是'AAA'索引而不是'BBB'索引。如何只从bbb索引得到结果或者根本没有结果?

  • 我试图从弹性搜索集群中获取数据。索引名称:testIndex类型:testType主机:localhost端口:8080 我想使用弹性搜索5.4版本,使用RestClient,我想使用多重匹配查询获取数据。 示例查询如下所示。 最好的方法是什么?我是否可以使用QueryBuilder构建查询并将其用于rest客户端。