单字符串全文查询
调用queryStringQuery()方法,将字符串拆分为单个后全文查找,按照默认的排序方式,即匹配相关度排序。
某字段按字符串模糊查询
调用matchQuery()方法,查询某个字段中模糊包含目标字符串。
短语匹配查询
使用PhraseMatch()方法查询。和match查询类似,match_phrase查询首先解析查询字符串来产生一个词条列表。然后会搜索所有的词条,但只保留包含了所有搜索词条的文档,并且词条的位置要邻接。一个针对短语“中华共和国”的查询不会匹配“中华人民共和国”,因为没有含有邻接在一起的“中华”和“共和国”词条。
这种完全匹配比较严格,类似于数据库里的“%落日熔金%”这种,使用场景比较狭窄。如果我们希望能不那么严格,譬如搜索“中华共和国”,希望带“我爱中华人民共和国”的也能出来,就是分词后,中间能间隔几个位置的也能查出来,可以使用slop参数。
我们先来添加一个类似的数据。
网友评论