Thank you very much. I thought that I tried that, but I am not using solr directly, instead using sunspot gem (ruby).
I'll figure it out now that I know it's possible and relatively easy. Thanks again. On Tue, Apr 19, 2022 at 10:30 PM Joel Bernstein <joels...@gmail.com> wrote: > You could use a boost query. The boost query would be a constant score OR > query on a multi-value field containing genres: > > (genre:1)^=1 OR (genre:2)^=1 > > The genre field contains the integer value genres. ^=1 assigns a score of > one to the match. The scores will get added together for each match. > > > > Joel Bernstein > http://joelsolr.blogspot.com/ > > > On Wed, Apr 13, 2022 at 10:12 AM Marko Avlijas <marko.avli...@gmail.com> > wrote: > > > Hello everyone, > > > > I am working on a music app. We have songs and songs can have > > multiple genres. > > We have a song - genre join table. > > We are indexing genre ids for each song as integers. > > > > I would like to add feature for users to search by genre. > > > > Given user searches for rock, pop, blues > > I'd like to order search results so that > > > > 1. Give me all songs where genres contain all 3: rock, pop AND blues > > 2. Give me all songs that are rock and pop, rock and blues or blues and > pop > > 3. Give me all songs where genre is either rock, pop or blues > > > > In other words, first songs that match all the genres, then songs that > > match 2/3 genres, then songs that match only 1 genre. > > > > Is this even possible? How to do it? > > > > Thank you, > > > > Marko Avlijaš > > >