You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by gi...@gmx.de on 2009/03/02 16:01:15 UTC

Combine facet.date and facet.field

Hello,

I'm using the facet.date function to get all matching docs per day:

q=foo&rows=0&facet=true&facet.date=date&facet.date.start=2009-01-31T00:00:00Z&facet.date.end=2009-03-01T23:59:59Z&facet.date.gap=+1DAY&fq=+size:big

2009-01-31T00:00:00Z -> 13 hits
2009-02-01T00:00:00Z -> 10 hits
...

As you see, the result is filtered by the "fq" parameter. The downside for this solution is that I have to run the query for every value from field "size" (big, small, ...). Is there an easier way to produce the following result with a single query only?

big -> 2009-01-31T00:00:00Z -> 13 hits
big -> 2009-02-01T00:00:00Z -> 10 hits
...
small -> 2009-01-31T00:00:00Z -> 1 hits
small -> 2009-02-01T00:00:00Z -> 7 hits
...

Thanks
Gisto
-- 
Psssst! Schon vom neuen GMX MultiMessenger gehört? Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger01

Re: Combine facet.date and facet.field

Posted by Erik Hatcher <er...@ehatchersolutions.com>.
On Mar 2, 2009, at 10:01 AM, gistolero@gmx.de wrote:
> I'm using the facet.date function to get all matching docs per day:
>
> q
> =
> foo
> &rows
> =
> 0
> &facet
> =
> true
> &facet
> .date
> =
> date
> &facet
> .date
> .start
> =
> 2009
> -01-31T00:00:00Z&facet.date.end=2009-03-01T23:59:59Z&facet.date.gap= 
> +1DAY&fq=+size:big
>
> 2009-01-31T00:00:00Z -> 13 hits
> 2009-02-01T00:00:00Z -> 10 hits
> ...
>
> As you see, the result is filtered by the "fq" parameter. The  
> downside for this solution is that I have to run the query for every  
> value from field "size" (big, small, ...). Is there an easier way to  
> produce the following result with a single query only?
>
> big -> 2009-01-31T00:00:00Z -> 13 hits
> big -> 2009-02-01T00:00:00Z -> 10 hits
> ...
> small -> 2009-01-31T00:00:00Z -> 1 hits
> small -> 2009-02-01T00:00:00Z -> 7 hits
> ...

There is a "tree" faceting component out there that I created still in  
JIRA: http://issues.apache.org/jira/browse/SOLR-792

It works with field faceting (not dates or queries) currently, but is  
along the lines of what you're after.  It'd be great to flesh it out  
to support date ranges and queries.  Under the covers it does just  
what you're doing from a client, but via a single request (but it can  
short circuit a little if the top-level facet has no documents).

	Erik