1

I'd like to query a string to Solr and let it answer with all records which are a subset of that string.

The string is separated by a comma. I wanna make Solr to give me all records where a specific string field is a subset of the string provided as the request.

Example

Imagine I have a string field indexed in Solr which is a set of strings separated by a comma. For example, let's say I have the following record's field indexed in Solr:

"AAA, AAB"

"AAA"

"AAA, AAB, AAC"

"AAA, AAB, AAC, AAD"

"AAA,AAC,AAD"

"AAA,AAD"

"AAD"

"AAB,AAC"

I wanna Solr to receive a query with, for example, "AAA, AAD" and reply with the following records:

"AAA"

"AAA ,AAD"

"AAD"

If I query by "AAA, AAB, AAC" the retrieved records would be...

"AAA"

"AAA,AAB"

"AAA ,AAB, AAC"

"AAB ,AAC"

The retrieved records must be exactly a subset of the string provided

Is it possible to make Solr behave like this?

6
  • Hi Meenu, in this scenario, you can get query in your search function and create a list split with a comma and then apply a foreach loop on this list, then in this loop you can check contains to this solr index field. Commented Jul 21, 2020 at 7:15
  • Gaurav, I am looking for a solr query to do this all and give the final records .
    – Meenu
    Commented Jul 21, 2020 at 7:28
  • yes Meenu, I am telling the same..suppose your method public abc xyx(string query){ // create a list by slpit comma //create a solr query here foreach(var a in list){ // add your logic here against solr query query = query.Where(i=>i.solrField.contains(a)); } } Commented Jul 21, 2020 at 7:41
  • or you can create predicate as well Commented Jul 21, 2020 at 7:44
  • 1
    Meenu check this - sitecore.stackexchange.com/questions/18362/… Commented Jul 21, 2020 at 8:03

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.