精确匹配查询

执行简单的精确匹配查询

精确匹配查询允许您选择字段与特定值匹配的所有文档。

您可以在多种字段类型上使用精确匹配查询。查询语法因类型而异。

本文中的示例使用了包含以下字段的模式

字段名称 字段类型
description TEXT
condition TAG
price NUMERIC

您可以在快速入门指南中找到有关创建索引和加载演示数据的更多详细信息。

数字字段

要在数字字段上执行精确匹配查询,您需要构建一个起始值和结束值相同的范围查询

FT.SEARCH index "@field:[value value]"

or

FT.SEARCH index "@field:[value]" DIALECT 2 # requires v2.10

or

FT.SEARCH index "@field==value" DIALECT 2 # requires v2.10

范围查询文章中所述,您还可以使用 FILTER 参数

FT.SEARCH index "*" FILTER field start end

以下示例展示了如何查询价格恰好为 270 美元的自行车

标签字段

标签是一小段文本序列,例如“new”或“Los Angeles”。

重要
如果您需要查询短文本,请使用标签查询而不是全文查询。标签字段在存储索引条目方面更节省空间,并且通常会降低精确匹配查询的复杂性。

您可以按照以下方式构建单个标签的标签查询

FT.SEARCH index "@field:{tag}"
注意
标签查询必须使用花括号。

这个简短的例子展示了如何查询新的自行车

对于包含特殊字符的标签的精确匹配查询,请使用双引号和 DIALECT 2。从 v2.10 开始,在涉及双引号标签的查询中需要转义的唯一字符是双引号字符。以下是使用包含特殊字符的双引号标签的示例

全文字段

全文查询的详细说明可在全文查询文档中找到。您还可以查询文本字段中短语的精确匹配项

FT.SEARCH index "@field:\"phrase\""
重要

对于精确匹配查询,短语必须用转义的双引号括起来。

您不能使用以停用词开头的短语。

这是一个查找描述中包含精确文本“rough terrain”的所有自行车的示例

评价本页
回到顶部 ↑