您当前的位置: 首页 > 快讯 >

php 使用 ElasticSearch 高级查询、过滤、排序

2023-08-02 07:20:45 来源:腾讯网
x

php 使用 ElasticSearch 高级查询、过滤、排序

上次我们分享到使用 ElasticSearch 的安装和基本查询操作,今天分享 ElasticSearch 的高级查询。

一、高级查询

1. 布尔查询(bool)


(资料图片)

bool把各种其它查询通过must(与)、must_not(非)、should(或)的方式进行组合。

2. 范围查询(range)

range 查询找出那些落在指定区间内的数字或者时间。

3. 模糊查询(fuzzy)

fuzzy 查询是 term 查询的模糊等价。它允许用户搜索词条与实际词条的拼写出现偏差,但是偏差的编辑距离不得超过2。

上面的查询,也能查询到apple手机

我们可以通过fuzziness来指定允许的编辑距离。

二、过滤(filter)

filter方式是在查询结果中进行过滤的,不会影响评分。

注意:filter中还可以再次进行bool组合条件过滤。

三、排序

1. 单字段排序

sort 可以让我们按照不同的字段进行排序,并且通过order指定排序的方式。

2. 多字段排序

假定我们想要结合使用 price和_id进行查询,并且匹配的结果首先按照价格排序,然后按照相id排序。

上一篇:

8月2日财经早餐:金价受累于美元和美债收益率攀升, 静待更多美国经济数据出炉

下一篇:

最后一页

x
精彩推送