lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bill Bell (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (SOLR-2242) Get distinct count of names for a facet field
Date Tue, 14 Jun 2011 02:51:47 GMT

     [ https://issues.apache.org/jira/browse/SOLR-2242?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Bill Bell updated SOLR-2242:
----------------------------

    Description: 
When returning facet.field=<name of field> you will get a list of matches for distinct
values. This is normal behavior. This patch tells you how many distinct values you have (#
of rows). Use with limit=-1 and mincount=1.


The feature is called "namedistinct". Here is an example:

http://localhost:8983/solr/select?shards=localhost:8983/solr,localhost:7574/solr&indent=true&q=*:*&facet=true&facet.mincount=1&facet.numFacetTerms=2&facet.limit=-1&facet.field=price

http://localhost:8983/solr/select?shards=localhost:8983/solr,localhost:7574/solr&indent=true&q=*:*&facet=true&facet.mincount=1&facet.numFacetTerms=0&facet.limit=-1&facet.field=price

http://localhost:8983/solr/select?shards=localhost:8983/solr,localhost:7574/solr&indent=true&q=*:*&facet=true&facet.mincount=1&facet.numFacetTerms=1&facet.limit=-1&facet.field=price

This currently only works on facet.field.

{code}

<lst name="facet_fields">
  <lst name="price">
    <int name="numFacetTerms">14</int>
    <int name="0.0">3</int><int name="11.5">1</int><int name="19.95">1</int><int
name="74.99">1</int><int name="92.0">1</int><int name="179.99">1</int><int
name="185.0">1</int><int name="279.95">1</int><int name="329.95">1</int><int
name="350.0">1</int><int name="399.0">1</int><int name="479.95">1</int><int
name="649.99">1</int><int name="2199.0">1</int>
  </lst>
</lst>

{code} 

Several people use this to get the group.field count (the # of groups).



  was:
When returning facet.field=<name of field> you will get a list of matches for distinct
values. This is normal behavior. This patch tells you how many distinct values you have (#
of rows). Use with limit=-1 and mincount=1.



The feature is called "namedistinct". Here is an example:

http://localhost:8983/solr/select?shards=localhost:8983/solr,localhost:7574/solr&indent=true&q=*:*&facet=true&facet.mincount=1&facet.numFacetTerms=2&facet.limit=-1&facet.field=price

http://localhost:8983/solr/select?shards=localhost:8983/solr,localhost:7574/solr&indent=true&q=*:*&facet=true&facet.mincount=1&facet.numFacetTerms=0&facet.limit=-1&facet.field=price

http://localhost:8983/solr/select?shards=localhost:8983/solr,localhost:7574/solr&indent=true&q=*:*&facet=true&facet.mincount=1&facet.numFacetTerms=1&facet.limit=-1&facet.field=price

Here is an example on field "hgid" (without namedistinct):

{code}
- <lst name="facet_fields">
- <lst name="hgid">
  <int name="HGPY0000045FD36D4000A">1</int> 
  <int name="HGPY00000FBC6690453A9">1</int> 
  <int name="HGPY00001E44ED6C4FB3B">1</int> 
  <int name="HGPY00001FA631034A1B8">1</int> 
  <int name="HGPY00003317ABAC43B48">1</int> 
  <int name="HGPY00003A17B2294CB5A">5</int> 
  <int name="HGPY00003ADD2B3D48C39">1</int> 
  </lst>
  </lst>
{code}

With namedistinct (HGPY0000045FD36D4000A, HGPY00000FBC6690453A9, HGPY00001E44ED6C4FB3B, HGPY00001FA631034A1B8,
HGPY00003317ABAC43B48, HGPY00003A17B2294CB5A, HGPY00003ADD2B3D48C39). This returns number
of rows (7), not the number of values (11).

{code}
- <lst name="facet_fields">
- <lst name="hgid">
  <int name="_count_">7</int> 
  </lst>
  </lst>
{code}
This works actually really good to get total number of fields for a group.field=hgid. Enjoy!


> Get distinct count of names for a facet field
> ---------------------------------------------
>
>                 Key: SOLR-2242
>                 URL: https://issues.apache.org/jira/browse/SOLR-2242
>             Project: Solr
>          Issue Type: New Feature
>          Components: Response Writers
>    Affects Versions: 4.0
>            Reporter: Bill Bell
>            Priority: Minor
>             Fix For: 4.0
>
>         Attachments: SOLR-2242.patch, SOLR-2242.shard.patch, SOLR-2242.solr3.1.patch,
SOLR.2242.solr3.1.patch, SOLR.2242.v2.patch
>
>
> When returning facet.field=<name of field> you will get a list of matches for distinct
values. This is normal behavior. This patch tells you how many distinct values you have (#
of rows). Use with limit=-1 and mincount=1.
> The feature is called "namedistinct". Here is an example:
> http://localhost:8983/solr/select?shards=localhost:8983/solr,localhost:7574/solr&indent=true&q=*:*&facet=true&facet.mincount=1&facet.numFacetTerms=2&facet.limit=-1&facet.field=price
> http://localhost:8983/solr/select?shards=localhost:8983/solr,localhost:7574/solr&indent=true&q=*:*&facet=true&facet.mincount=1&facet.numFacetTerms=0&facet.limit=-1&facet.field=price
> http://localhost:8983/solr/select?shards=localhost:8983/solr,localhost:7574/solr&indent=true&q=*:*&facet=true&facet.mincount=1&facet.numFacetTerms=1&facet.limit=-1&facet.field=price
> This currently only works on facet.field.
> {code}
> <lst name="facet_fields">
>   <lst name="price">
>     <int name="numFacetTerms">14</int>
>     <int name="0.0">3</int><int name="11.5">1</int><int name="19.95">1</int><int
name="74.99">1</int><int name="92.0">1</int><int name="179.99">1</int><int
name="185.0">1</int><int name="279.95">1</int><int name="329.95">1</int><int
name="350.0">1</int><int name="399.0">1</int><int name="479.95">1</int><int
name="649.99">1</int><int name="2199.0">1</int>
>   </lst>
> </lst>
> {code} 
> Several people use this to get the group.field count (the # of groups).

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org


Mime
View raw message