You can use pivot faceting. https://wiki.apache.org/solr/SimpleFacetParameters#Pivot_.28ie_Decision_Tree.29_Faceting
There is no index time work required and you can nest the facets at search time as for your need. PS : It won't work with SolrCloud / Sharded Index .. SOLR-2894 is in progress if you need distributed faceting. Example ; &facet=true&facet.pivot=binding_string,language_string binding_string,language_string: [ - { - field: "binding_string", - value: "Paperback", - count: 882, - pivot: [] }, - { - field: "binding_string", - value: "Hardcover", - count: 169, - pivot: [] }, - { - field: "binding_string", - value: "P", - count: 454, - pivot: [ - { - field: "language_string", - value: "English", - count: 198 }, - { - field: "language_string", - value: "Spanish", - count: 44 }, - { - field: "language_string", - value: "German", - count: 27 On 31 July 2014 11:25, Alexandre Rafalovitch <arafa...@gmail.com> wrote: > Now it sounds like maybe you have nested facets as opposed to just > different ones. See if one of these fits your use case better: > http://wiki.apache.org/solr/HierarchicalFaceting > > Regards, > Alex. > Personal: http://www.outerthoughts.com/ and @arafalov > Solr resources and newsletter: http://www.solr-start.com/ and @solrstart > Solr popularizers community: https://www.linkedin.com/groups?gid=6713853 > > > On Thu, Jul 31, 2014 at 12:22 PM, Smitha Rajiv <smitharaji...@gmail.com> > wrote: > > Hi All, > > > > We have tried both exclude option as well as facet query. Both approach > are > > not giving us the desired results. > > > > I will explain a little further. I have first level facets - Paperback > and > > Ebook, and second level facets include a list of languages like English, > > French etc.. > > > > When user selects 'Paperback', then currently i am getting all the > > languages of paperback. But "Ebook" is not getting in result. But i can > > resolve this by using exclude for the first level facet. > > > > Now I am facing issue for the second level facet. When the user selects > > 'Paperback' and 'English', then the query returns only 'Paperback' in > first > > level and 'English' in second level. But I need other languages (which > > satisfies paperback) also, so that I can show them in second level. > > > > We tried with facet.query as well as facet.field options. Please find the > > query below. > > > > > > > http://localhost:8080/solr/collection1/select?q=software%20testing&fq=language%3A(%22English%22)&fq=Binding%3A(%22paperback%22)&facet=true&facet.mincount=1 > > &facet.field=Language&facet.field=latestArrivals&facet.f > > ield=Binding&wt=json&indent=true&defType=edismax&json.nl= > > map&facet.field=language&facet.field=binding. > > > > > > > http://localhost:8080/solr/collection1/select?q=software%20testing&fq=language%3A(%22English%22)&fq=Binding%3A(%22paperback%22)&facet=true&facet.mincount=1 > > &facet.field=Language&facet.field=latestArrivals&facet.f > > ield=Binding&wt=json&indent=true&defType=edismax&json.nl= > > map&facet.query=language&facet.query=binding. > > > > > > Please provide your thoughts. > > > > > > Thanks & Regards, > > > > Smitha > > > > > > > > > > > > On Wed, Jul 30, 2014 at 8:18 PM, Sujit Pal <sujit....@comcast.net> > wrote: > > > >> Hi Smitha, > >> > >> Have you looked at Facet queries? It allows you to attach Solr queries > to > >> facets. The problem with this is that you will need to know all possible > >> combinations of language and binding (or make an initial query to find > this > >> information). > >> > >> > >> > https://wiki.apache.org/solr/SimpleFacetParameters#facet.query_:_Arbitrary_Query_Faceting > >> > >> Another alternative could be to bake in language+binding pairs into a > field > >> in your index and facet on that. > >> > >> -sujit > >> > >> > >> > >> On Wed, Jul 30, 2014 at 7:01 AM, vamshi kiran < > mothevamshiki...@gmail.com> > >> wrote: > >> > >> > Hi Alex, > >> > > >> > As you said If we exclude language facet field ,it will get all the > >> > language facets with count right ? > >> > It Will not filter by binding facet field of type 'paperback' , how > can > >> we > >> > do this ? > >> > > >> > Thanks & Regards, > >> > Vamshi. > >> > On Jul 30, 2014 4:11 PM, "Alexandre Rafalovitch" <arafa...@gmail.com> > >> > wrote: > >> > > >> > > I am not sure I fully understood your question, but I would start by > >> > > looking at Tagging and Excluding first: > >> > > > >> > > > >> > > >> > https://wiki.apache.org/solr/SimpleFacetParameters#Tagging_and_excluding_Filters > >> > > > >> > > Regards, > >> > > Alex. > >> > > Personal: http://www.outerthoughts.com/ and @arafalov > >> > > Solr resources and newsletter: http://www.solr-start.com/ and > >> @solrstart > >> > > Solr popularizers community: > >> https://www.linkedin.com/groups?gid=6713853 > >> > > > >> > > > >> > > On Wed, Jul 30, 2014 at 5:07 PM, Smitha Rajiv < > smitharaji...@gmail.com > >> > > >> > > wrote: > >> > > > Hi, > >> > > > > >> > > > > >> > > > I need some help on Solr Faceting. > >> > > > > >> > > > > >> > > > How do I facet on two fields at the same time to get combination > >> facets > >> > > and > >> > > > its count? > >> > > > > >> > > > I'm using below query to get facets with combination of language > and > >> > its > >> > > > binding. But now I'm getting only selected facet in facetList of > >> each > >> > > > field and its count. For e.g. in language facets the query is > >> > returning > >> > > > "English" and its count. Instead I need to get other language > facets > >> > > which > >> > > > satisfies binding type of paperback > >> > > > > >> > > > > >> > > > > >> > > > > >> > > > >> > > >> > http://localhost:8080/solr/collection1/select?q=software%20testing&fq=language%3A(%22English%22)&fq=Binding%3A(%22paperback%22)&facet=true&facet.mincount=1 > >> > > > > >> > > > > >> > > > >> > > >> > &facet.field=Language&facet.field=latestArrivals&facet.field=Binding&wt=json&indent=true&defType=edismax& > >> > > > json.nl=map > >> > > > > >> > > > > >> > > > > >> > > > Please provide me your inputs. > >> > > > > >> > > > > >> > > > Thanks & Regards, > >> > > > > >> > > > Smitha > >> > > > >> > > >> > -- --- Thanks & Regards Umesh Prasad