elasticsearch - 通过 Nest 客户端运行查询与查询搜索查询?
问题描述
我是 ElasticSearch 的新手,正在编写基本的搜索查询。我希望能够在全文字段中搜索关键字。我知道这可以使用查询搜索查询来完成,但我不清楚这是如何使用 Nest 客户端完成的。
var searchResponse = client.Search<mdl.Event>(s => s
.Query(q => q
.Match(m => m
.Query(search.Text))
&& q
.DateRange(r => r
.Field(f => f.CreatedTimeStamp)
.GreaterThanOrEquals(search.From)
.LessThanOrEquals(search.To))));
这是我的代码。基本上,我正在尝试在某个日期之间搜索一些文本,但我相信上面不是在正文中搜索代码。有没有办法可以轻松更改此查询以便搜索整个身体?还是它已经这样做了,我不知道?
我正在搜索集群中的事件。一个事件的示例可能如下所示:
{
"text": "string",
"includeExecution": true,
"processIds": "string",
"statuses": [
"string"
],
"space": "string",
"from": "2021-09-17T01:40:03.796Z",
"to": "2021-09-17T01:40:03.796Z",
"take": 0,
"skip": 0,
"orderBy": "string",
"orderByDescending": true
}
就我而言,我希望能够搜索“字符串”一词并显示此结果(因为“字符串”存在于空间中)
解决方案
尝试使用这样的QueryString
查询。search.Text
这将在您文档的所有字段中搜索。
var searchResponse = client.Search<mdl.Event>(s => s
.Query(q => q
.QueryString(qs => qs
.Query(search.Text))
&& q
.DateRange(r => r
.Field(f => f.CreatedTimeStamp)
.GreaterThanOrEquals(search.From)
.LessThanOrEquals(search.To))));
推荐阅读
- python - 并行化一系列尊重数据依赖关系的操作
- django - Django - 浏览表单(向后/向前)而不在数据库中创建/删除对象
- swift - 为什么 Empty Publisher 不会在 Combine 中触发完成事件?
- java - 使用 API 包装器
- create-react-app - 顺风样式不适用于生产
- anylogic - 如何不占用不需要的资源单元?
- python - discord.py 1.7.2 - 如何私信用户
- javascript - 启动没有父子关系的进程
- javascript - 如何从 div 元素中获取所有 ID?
- macos - SonarQube Wrapper 停止 -> 失败 -> Mac OS Big Sur