gpt4 book ai didi

sql - 如何让elasticsearch执行类似于SQL 'LIKE'

转载 作者:行者123 更新时间:2023-11-29 11:22:06 27 4
gpt4 key购买 nike

如果使用 SQL 'Like' 语句查询数据,即使只有部分匹配,它也会返回数据。例如,如果我正在搜索食物,并且在使用 SQL 时我的数据库中有一个名为“raisins”的项目,即使我的搜索只包含“rai”,查询也会返回“raisins”。在 elasticsearch 中,查询不会返回记录,除非指定了整个名称(在本例中为“raisins”)。如何让 elasticsearch 的行为类似于 SQL 语句。我正在使用 Rails 3.1.1 和 PostgreSQL。谢谢!

最佳答案

在为 elasticsearch 创建模型索引时,在索引上使用 tokenizer 将满足您的要求。为了。例如

tokenizer: {
:name_tokenizer => {type: "edgeNGram", max_gram: 100, min_gram: 3, side: "front"}
}

这将创建大小从 3 到 100 个字段的标记,并且作为前面给出的边,它将从头开始检查。您可以从此处获得更多详细信息 http://www.slideshare.net/clintongormley/terms-of-endearment-the-elasticsearch-query-dsl-explained

关于sql - 如何让elasticsearch执行类似于SQL 'LIKE',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10648030/

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