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š
> >
>

Reply via email to