我有一个针对webapp的elasticsearch搜索实现,但我仍然坚持最后的细节.我希望能够按字母顺序过滤某些字段.因此,如果我查询'd',它应该带回所有以'd'开头的字段.目前这就是我所拥有的:
$elasticaQueryString = new Elastica_Query_QueryString();
$elasticaQueryString->setDefaultField('Name');
$elasticaQueryString->setQuery('d'.'*');
Run Code Online (Sandbox Code Playgroud)
它适用于只有一个工作的字段,即'Dan'.但如果有多个单词,则返回每个关键字的结果.即'Dan Ryan','Ryan Dan'.我也尝试了通配符和前缀查询,但它们给出了类似的结果.
我是否需要创建自定义分析器或是否有其他方法解决此问题?