通过预订号在弹性搜索中搜索数据

问题描述 投票:0回答:1

任何人告诉我我的代码实际上有什么问题

我正在弹性搜索相关预订中保存数据 现在我想在弹性搜索中搜索彻底的预订号码。它返回错误的数据。它显示了弹性搜索中保存的所有记录

我想搜索 传递预订号并返回我与预订号相关的快速记录

if(indexType.contains(BOOKING_INDEX) || indexType.contains(ALL_INDEX)) { matchQueryBuilder = getQueryForAllFields(Booking.class, query, matchQueryBuilder); matchQueryBuilder = matchQueryBuilder .should(wildcardQuery("bookingNumber",query)) .should(matchQuery("bookingNumber",query)); indicesList.add(BOOKING_INDEX); typeList.add("carrierBooking"); } 任何帮助我。 提前致谢

spring-boot elasticsearch spring-data-jpa spring-data-elasticsearch
1个回答
0
投票

您可以使用

should
must
查询而不是
filter
查询。应该查询不会过滤掉结果,但如果有任何必须或过滤查询,则会增加分数。

或者你可以使用 minimum_should_match 参数

© www.soinside.com 2019 - 2024. All rights reserved.