gpt4 book ai didi

reactjs - 使用Elasticsearch全部过滤

转载 作者:行者123 更新时间:2023-12-03 00:45:48 25 4
gpt4 key购买 nike

假设我有一个User表,其中包含名称,地址,年龄等字段。此表中有1000多个记录,因此我使用Elasticsearch一次一次一页检索此数据,即20条记录。

假设我只是想搜索一些文本“Alexia”,所以我想显示:是否有包含Alexia的记录?但特别的是,我想通过表中的所有字段来搜索此文本。

搜索文字是否与姓名字段或年龄或地址或其他匹配?如果这样做,它应该返回值。我们不会为Elastic查询传递任何特定字段。如果返回超过20条与我的文本匹配的记录,则分页应该起作用。

任何想法如何做这样的查询?或以任何方式连接Elasticsearch?

最佳答案

是的,您可以通过查询字符串来做到这一点

{
"size": 20,
"query": {
"query_string": {
"query": "Alexia"
},
"range": {
"dateField": {
"gte": **currentTime** -------> This could be current time or age or any property that like to do a range query
}
}
},
"sort": [
{
"dateField": {
"order": "desc"
}
}
]
}

对于仅获取20条记录,您可以将Size传递为20;对于分页,可以使用RangeQuery并获取下一组消息
{
"size": 20,
"query": {
"query_string": {
"query": "Alexia"
},
"range": {
"dateField": {
"gt": 1589570610732. ------------> From previous response
}
}
},
"sort": [
{
"dateField": {
"order": "desc"
}
}
]
}

关于reactjs - 使用Elasticsearch全部过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61827294/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com