Я использую Solr 5.2 с возможным обновлением до 8.2, а также edismax для поиска строки среди выбранных полей. В некоторых полях запроса используется ngram, поэтому результаты, содержащие строку поиска, будут отображаться в поиске. Я хочу иметь документы, в которых есть совпадение, начинающееся со слова поиска, которое будет отображаться в начале результатов поиска.
Моя первая попытка состояла в том, чтобы поместить как строковое поле, так и текстовое поле ngram в qf
и поиск строки и начинается с повышения. Например, если строка поиска "lorem", я бы использовал:
q = (lorem *) или (lorem)
Я бы также использовал бустеры для строковых полей. Однако совпадения ngram, кажется, набирают больше очков, поэтому совпадения, начинающиеся с поисковых слов, не всегда отображаются первыми.
Как мне найти совпадения, в которых отображаются искомые слова в начале строки поиска первый