gpt4 book ai didi

elasticsearch - 在Elasticsearch中查询字段的完全匹配的最佳实践是什么?

转载 作者:行者123 更新时间:2023-12-02 23:14:25 24 4
gpt4 key购买 nike

在Elasticsearch中查询字段的确切值的最佳方法是什么?比如说我有:

profile: {
email: "test@email.com"
}

如何检查个人资料中的 test@email.com电子邮件是否完全相同?

最佳答案

每当您需要精确搜索时,都可以将该字段的数据类型定义为 keyword 。如果您需要在同一字段上同时进行部分搜索(分析)和精确搜索,则可以为该字段定义一个子字段,并在需要精确搜索时引用该子字段。

因此,字段定义如下所示:

"email": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword"
}
}
}

然后,您可以使用 term query执行精确搜索。
{
"query": {
"term": {
"email.keyword": "test@email.com"
}
}
}

注意:将类型定义为 keyword会导致区分大小写的精确搜索。

关于elasticsearch - 在Elasticsearch中查询字段的完全匹配的最佳实践是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56963095/

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