我有一个用于Elasticsearch的简单JSON查询,如下所示:
"query": {
"bool": {
"must": { "match": { "id": "1" }} ,
"must": { "match": { "tags.name": "a1"}}
}
}
仅当值(在这种情况下为“ a1”)不为空时,才如何执行第二个“必须”条件?
您可以使用以下方法实现它-
{
"query": {
"bool": {
"must": [
{
"match": {
"id": "1"
}
},
{
"bool": {
"should": [
{
"missing": {
"field": "tags.name"
}
},
{
"match": {
"tags.name": "a1"
}
}
]
}
}
]
}
}
}
其中“in”是来自用户的输入。 我只从hibernate中的两个表中映射了Emp_Id作为主键,因此hibernate条件将只对该表应用联接,而不对Langcode应用联接。 注意:-我不能更改hibernate映射,只能使用hibernate标准,根据客户的要求,请帮助我。
此外,您是否愿意指出任何好的教程,以编写复杂的查询在JPA。
我有一个带标记器的字段,它被点分割。搜索时,以下值为aaa。bbb将分为两个术语:aaa和bbb。 我的问题是如何编写bool查询,将包含多个条件在同一项? 例如,我想得到所有文档,其中它的字段包含一个与模糊搜索匹配的术语,但同一术语不得包含。 以下是我想要实现的一些示例: 匹配:因为它匹配模糊搜索,而不是gamil <代码>gamil。bmail//匹配:因为术语bmail与模糊搜索匹配,而不是
这是我的Elasticsearch sql查询。我使用Kibana执行了这个查询,并得到了有效的输出。 明白吗?format=json{“query”:“从eps_stbl_日志中选择Count(appId),其中cast(timestamp AS DATE)=TODAY()和status='COMPLETED'” 这需要在restHighLevelClient java API中编写。你能帮助编
问题内容: 我想使用查询来比较多个字段。我有字段1到4。我想搜索字段1大于字段2并且下面的查询工作正常的数据; 现在,我想搜索哪个字段1大于字段2以及哪个字段3大于字段4的数据。根据Elastic Search:如何编写多语句脚本?和此链接,我只需要用分号分隔每个语句。所以应该是这样的: 但是该查询无效,并返回如下编译错误: ] .value> doc [‘field2’]。value; doc