Hello - it looks like you have synonyms enabled at query time, which is fine, but also means TF*IDF stats are different for tbrush and toothbrush, causing this order to be the way it is. There is no solution available in Solr right now that would boost user-entered terms over expanded synonyms but you can try this [1] plugin. You can solve the second problem by using phrase boosting in dismax, see the pf parameter.
[1]: https://github.com/healthonnet/hon-lucene-synonyms M. -----Original message----- > From:Brian Narsi <bnars...@gmail.com> > Sent: Tuesday 1st December 2015 2:36 > To: solr-user@lucene.apache.org > Subject: Synonyms in Search Results and More Accurate Matches > > I am using edismax with mm=1 and qs=6 > > I have a field type with synonyms attached to it. > A sample synonym is: > > toothbrush tbrush > > For the following data: > > 1) Phillips toothbrush > > 2) Oral-B tbrush > > 3) Phillips Sonicare toothbrush > > > If a user searches for > > q = tbrush > > I am getting > > 1), 3), 2) > > i.e. the one with exact synonym match is last > > If a user searches for > > q = toothbrush > > Result is > > 2), 1), 3) > > i.e. one with exact match is not first > > > So > > 1) I need the exact matches to be first and then the other matches (because > of being a synonym) > > 2) If a user searches for Phillips Sonicare toothbrush; I need the results > in the following order 3), 1), 2) i.e. most relevant results should be > higher > > What changes do I need to make in order to accomplish this? > > Thanks in advance, >