我有收藏电影。我有电影json文件包含json属性作为电影名称,发行年份等。我正试图搜索电影名称,我希望确切的单词匹配得分更高。例如,如果我搜索电影名称"星际迷航";我想看《星际迷航》得分最高(第一个结果),然后是"星际迷航:超越";以及《星际迷航:暗黑无界》。目前,当我搜索"星际迷航"时;我得到的电影名称中包含得分更高的其他单词。
也有可能,我可以查询更多的json属性,以获得更准确的结果。
的例子我有三个文档doc1——
{
"MovieName":"Star Trek",
"ReleaseYear":1966
}
doc2——
{
"MovieName":"Star Trek Beyond",
"ReleaseYear":2016
}
doc3——
{
"MovieName":"Star Trek Into Darkness",
"ReleaseYear":2013
}
如果我搜索电影名称"星际迷航";发行年份"1965";那么完全匹配应该得到更高的分数或者接近匹配应该得到更高的分数。因此,即使1965年与所提供文档的发布年份不匹配,我仍然应该得到接近匹配的结果。
这里我想要result score wise为doc1 doc3 doc2。类似的方式,我应该能够提供更多的属性,以获得接近准确的结果。我尝试了boost查询,但我没有得到想要的结果。
你的boost查询中有什么?你用了ct吗?jsonPropertyValueQuery或范围查询,以消除部分匹配?