Coldfusion Solr Search - equivalent to LIKE %string% in SQL -


how solr search same logic of following sql search query?

select * user email '%ben%'"  

i tried following,

<cfscript>     mysearch = new com.adobe.coldfusion.search();     searchresult = mysearch.search(collection="mycollection", criteria='ben*');  </cfscript> 
  1. criteria='ben*' matched 'raw_ben@yahoo.com' , 'ben@yahoo.com' didn't return string 'roben roben'.

  2. criteria='ben~' matched 'raw_ben@yahoo.com' , 'ben@yahoo.com' didn't return string 'roben roben'.

same goes fuzzy search, wild search attempts.

you need change fieldtype field can generate tokens using solr.edgengramfilterfactory of can generate tokes e.g. abhijit generate abh, abhi, abhij, abhiji, abhijit , hence match these combination query.

with second edgengramfilterfactory generate tokens jit, ijit, hijit, bhijit, abhijit, iji, hiji, bhiji etc. on...

try below field type

<fieldtype name="text_reference" class="solr.textfield" sortmissinglast="true" omitnorms="true" positionincrementgap="100">    <analyzer type="index">      <tokenizer class="solr.keywordtokenizerfactory"/>        <filter class="solr.lowercasefilterfactory"/>        <filter class="solr.edgengramfilterfactory" mingramsize="3" maxgramsize="50" side="front"/>        <filter class="solr.edgengramfilterfactory" mingramsize="3" maxgramsize="50" side="back"/>    </analyzer>    <analyzer type="query">       <tokenizer class="solr.keywordtokenizerfactory"/>          <filter class="solr.lowercasefilterfactory"/>    </analyzer> </fieldtype> 

Comments