我想在redissearch中执行模糊搜索。假设我在数据库的标签字段中有“JEREMY,J”。我想找到杰里米。我尽力了
FT.SEARCH employee "@FN_Tags:{JEREM}~0.2"
但似乎不起作用现在唯一有效的查询是只处理TEXT字段:
FT.SEARCH employee "@FN_Fuzzy:%JEREM%"
但是尝试在标记上这样做会导致语法错误
FT.SEARCH employee "@FN_Tags:{%JEREM%}"
3b6akqbq1#
标记字段不支持模糊搜索,但可以对标记使用前缀搜索。关于tag field documentation:标签支持前缀与常规 * 字符匹配:
> FT.SEARCH idx "@tags:{ hell* }" > FT.SEARCH idx "@tags:{ hello\\ w* }"
您也可以使用后缀(*tag)或“contains”(*tag*)。所以对于你的案子
*tag
*tag*
> FT.SEARCH employee "@FN_Tags:{JEREM*}"
应该可以希望能帮上忙。
1条答案
按热度按时间3b6akqbq1#
标记字段不支持模糊搜索,但可以对标记使用前缀搜索。关于tag field documentation:
标签支持前缀与常规 * 字符匹配:
您也可以使用后缀(
*tag
)或“contains”(*tag*
)。所以对于你的案子应该可以希望能帮上忙。