If you're using DataImportHandler, a custom (Java or script)
transformer could do this.
Also an UpdateProcessor could do it.
But there is no conditional copyField capabilities otherwise.
Keep in mind that pragmatically, if you're doing your own indexing
code, why not have a line like this? :)
max_side = (length > width) ? length : width
Erik
On Aug 25, 2009, at 2:20 PM, Erik Earle wrote:
Is there a way to have the max_side field only in Solr ...as in a
conditional copyField or something like that?
I'd like to push as much of this into Solr as I can because the app
and db that Solr is indexing are not really the best place to add
this type of functionality.
----- Original Message ----
From: Koji Sekiguchi <k...@r.email.ne.jp>
To: solr-user@lucene.apache.org
Sent: Tuesday, August 25, 2009 4:04:29 AM
Subject: Re: Solr Query help - sorting
Hi Erik Earle,
Ahh, I read your mail too fast... Erik Hatcher's method should work.
Thanks!
Koji
Erik Hatcher wrote:
You couldn't sort on a multiValued field though.
I'd simply index a max_side field, and have the indexing client add a
single valued field with max(length,width) to it. Then sort on
max_side.
Erik
On Aug 25, 2009, at 4:00 AM, Constantijn Visinescu wrote:
make a new multivalued field in your schema.xml, copy both width and
length
into that field, and then sort on that field ?
On Tue, Aug 25, 2009 at 5:40 AM, erikea...@yahoo.com
<erikea...@yahoo.com>wrote:
Clever... but if more than one row adds up to the same value I may
get the
wrong order (like 50, 50 and 10, 90)
I need a max function but the one provided only compares against a
constant.
Sent from my iPhone
On Aug 24, 2009, at 6:15 PM, Koji Sekiguchi <k...@r.email.ne.jp>
wrote:
How about using sum() FunctionQuery, via:
http://localhost:8983/solr/select/?q=_val_%3A%22sum%28width%2Clength%29%22
Thanks,
Koji
Erik Earle wrote:
Suppose I have a database of rectangle attributes that I have
indexed in
Solr and I want to get the top 10 widest or longest rectangles
from one
query.
name | width | length
A | 100 | 10
B | 10 | 90
C | 80 | 10
...
My indexed fields are: name, width, length
Is there a way to query so that my data returns the order: A, B, C