Solr search examples

The following examples show the search syntax used while performing search operations using Solr:

  • Single word search: The following example shows how to search for a single word in a collection:

    <cfsearch name="qsearch1" collection="solr_complex" criteria="Graphics">

  • Multiple word search: The following example shows how to search a document or query having words "ColdFusion" and "Green" in it:

    <cfsearch name="qsearch1"
    collection="solr_complex"
    criteria="+Green +Coldfusion">

  • Search with at least one word: The following example shows how search for at least "Coldfusion" OR (Green OR Blue):

    <cfsearch name="qsearch1"
    collection="solr_complex"
    criteria=" +Coldfusion Green Blue">

  • Search for one word, but not the other: The following example shows how to search for "Green" but NOT "Coldfusion":

    <cfsearch name="qsearch1"
    collection="solr_complex"
    criteria=" -Coldfusion +Green">

  • Fuzzy search: The following example shows how to search words like roam, roams, foam, foams:

    <cfsearch name="qsearch1"
    collection="solr_complex"
    criteria=" roam~">

    Alternate way to perform a fuzzy search for "roam":

    <cfsearch name="qsearch1"
    collection="solr_complex"
    criteria="roam~">

    Searching for higher similarity with roam:

    <cfsearch name="qsearch1"
    collection="solr_complex"
    criteria=" roam~0.8" >

  • Wildcard search: The following syntax searches for 'test', 'text', 'teat', and so on:

    <cfsearch name="qsearch1"
    collection="solr_complex"
    criteria=" te?t">

    This example searches for 'test', 'text', 'teeeeeext', and 'texyzt':

    <cfsearch name="qsearch1"
    collection="solr_complex"
    criteria=" te*t">

 

Note:

You cannot use a * or question mark (?) symbol as the first character of a search.

  • Proximity search: To search for "apache" and "jakarta" within five words of each other in a document, use the following search:

    <cfsearch name="qsearch1" 
    collection="solr_complex" 
    criteria="jakarta apache" ~10>

  • Range Search: Following searches all documents with title between 'fuzzy1.txt' to 'text1.txt':

    <cfsearch name="qsearch" 
    collection="solr_srch" 
    criteria="title:fuzzy1.txt TO text1.txt">

    To search a document whose modification date is between a given range:

    <cfsearch name="qsearch" 
    collection="solr_srch" 
    criteia="modified:20080101 TO 20500101">

    These
    ranges are inclusive of start and end terms. To exclude them, use
    curly brackets{} instead.

  • Field search: To search any document whose title contains "fuzzy1.txt"

    <cfsearch name="qsearch" 
    collection="solr_srch" 
    criteria="title:fuzzy1.txt">

    Searching for document that contains title as 'fuzzy1.txt' OR 'fuzzy2.txt':

    <cfsearch name="qsearch" 
    collection="solr_srch" 
    criteria="title:fuzzy?.txt">

    The following syntax can be used to perform the same search:

    <cfsearch name="qsearch" 
    collection="solr_srch" 
    criteria= ""title:fuzzy1.txt"" OR ""title:fuzzy2.txt"">

    Alternatively, you can search using the following syntax:

    <cfsearch name="qsearch" 
    collection="solr_srch" 
    criteria="title:(test* +fuzzy1*)">

  • String search:

    <cfsearch name="qsearch1" 
    collection="solr_complex" 
    criteria="Cold Fusiongava" OR "Internet Tools">

  • Searching synonyms: There are two ways to search documents that have synonymous words like 'MB', 'megabyte', 'gig', and so on:
  1. If collection is not yet created, go to:  <cf_home>/solr/multicore/template/conf/synonyms.txt This file contains some default mappings such as 'GB, gig, gigabyte, gigabytes'. Define your synonym mappings in the next row.

  2. If you want to add a synonym mapping for a collection that is already created, go to <collection_location>/conf/synonyms.txt and define your mapping.Restart the Solr server after defining mapping .

 Adobe

Get help faster and easier

New user?