When we use boooleanquery, sometimes we want to hit at least N, we usesetMinimumNumberShouldMatch方法。
Like what:
booleanquery BQ = new Booleanquery (); Bq.add ( new termquery (new term (" Title "," Java " new Termquery (new term ("title", "C #" new termquery (new term ("title", "JavaScript" new termquery (new term ("title", "PHP" 3);
Query string: (Title:java title:c# title:javascript title:php) ~
When we retrieve the string directly as SOLR's Q parameter, Solr prompts us for a syntax error. And, we sometimes have to use this feature, for example, I want to recruit a Java, C #, JS, PHP at least three people (just an example), this time need to use the
SOLR's Edismax
When retrieving, we select Deftype = Edismax mm =3, mm indicates the number of Booleanclause to be met at least
The corresponding use method of Lucene Booleanclause Setminimumnumbershouldmatch in SOLR