我正在使用 Couchbase 5 和 Go Lang 1.11 ,试图根据确切值查询结果。
下面的代码正在查找状态为“可用”和“不可用”的行。如何使其仅返回“可用”行?
{{1}}
答案 0 :(得分:2)
这将取决于您如何分析输入字段,这将有助于您了解所使用的分析仪,但现在我将假定默认的“标准”分析仪。
在这种情况下,请不要使用默认的分析器。正如Matt在评论中所问的那样,您正在尝试对短语中的确切文本进行直接匹配,这与大多数文本搜索用户略有不同。因此,您真的不希望将文本标记为更小的片段。
使用Couchbase搜索GUI创建一个自定义分析器,该GUI使用“单个” tokenizer,以便将字段中的所有文本保留在一起。或者,您可以使用可能足够接近您的“关键字”分析器。将其设置为默认分析器,您的查询应能按预期工作。
如果您正在寻找另一种方法,那么term or term phrase query可能会更适合您,但是您仍然必须意识到分析仪的工作方式。