es数组包含查询

es中字段A 值是一个list [a, b, c, d],当入参为[a, b, c, d, e] 或 [a, b, c, d] 就可以匹配到;如果是 [a, b, c] 就匹配不到。

复制代码
{
	"query": {
		"bool": {
			"filter": [{
				"script": {
					"script": {
						"source": """ 
                            List<Integer> fieldAValues = Arrays.asList(doc['field_a'].values()); 
                            List<Integer> searchValues = Arrays.asList(params.searchValues); 
                            return searchValues.stream().allMatch(fieldAValues::contains);
    					""",
						"lang": "painless",
						"params": {
							"searchValues": [a, b, c, d]
						}
					}
				}
			}]
		}
	}
}

该方法比较耗cpu。

其他类似方法:

Fingerprint processor | Elasticsearch Guide [8.6] | Elastic

相关推荐
Jammingpro1 小时前
【Git版本控制】Git初识、安装、仓库初始化与仓库配置(含git init、git config与配置无法取消问题)
java·git·elasticsearch
失散134 小时前
分布式专题——44 ElasticSearch安装
java·分布式·elasticsearch·架构
arvin_xiaoting6 小时前
#zsh# #Ubuntu# 一键安装zsh、oh-my-zsh、常用插件
linux·ubuntu·elasticsearch
bemyrunningdog7 小时前
IntelliJ IDEA合并分支到master全攻略
大数据·elasticsearch·intellij-idea
dessler8 小时前
Elasticsearch(ES)分片(Shard)和 副本分片(Replica Shard)
linux·运维·elasticsearch
paj1234567899 小时前
elasticsearch-8.12.2集群部署
java·elasticsearch
liliangcsdn18 小时前
如何基于ElasticsearchRetriever构建RAG系统
大数据·elasticsearch·langchain
相与还19 小时前
IDEA和GIT实现cherry pick拣选部分变更到新分支
git·elasticsearch·intellij-idea
Elastic 中国社区官方博客1 天前
Simple MCP Client - 连接到 Elasticsearch MCP 并进行自然语言搜索
大数据·人工智能·elasticsearch·搜索引擎·ai·全文检索
会飞的小蛮猪1 天前
ELK运维之路(Logstash测试案例1)
elasticsearch·kibana·logstash