【问题标题】:ElasticSearch: partial match with both case sensitive and insensitive search using a single indexElasticSearch:使用单个索引与区分大小写和不区分大小写的搜索部分匹配
【发布时间】:2021-06-11 04:46:06
【问题描述】:

是否可以为单个索引创建一个映射,我可以在其中执行match 查询(与keyword 不同的是部分字段匹配),这将满足区分大小写和不区分大小写的搜索?

示例数据:

{
    "description": "my Brown car"
}

搜索大小写 1 - 不区分大小写:“棕色”:1 次命中 text 字段类型和 match 查询来实现。

搜索大小写 2 - 区分大小写:“棕色”:无结果。 term 区分大小写,但不匹配,因为不是整个字段值。

我无法创建第二个索引,因为我正在创建一个结合两者的bool 查询。但我可以有多个字段,例如decription.keyworddescription.magic

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    您可以使用 Elasticsearch 的多字段选项。

    为不同目的以不同方式索引同一字段通常很有用。这就是多字段的目的。

    更多信息请查看 Elastic 官方文档here

    【讨论】:

    • 对,我需要使用标准分析器进行不区分大小写的搜索,使用自定义分析器(关闭小写过滤器的标准)用于区分大小写的大小写,并创建一个多字段选项。跨度>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-15
    • 2012-01-31
    • 2018-08-05
    相关资源
    最近更新 更多