Re: Query formulation help

2016-11-05 Thread Erick Erickson
Assuming these are numerics, use function queries I should think, see:
https://cwiki.apache.org/confluence/display/solr/Function+Queries#FunctionQueries-AvailableFunctions.
You'll see lt, gt, etc.

Best,
Erick

On Fri, Nov 4, 2016 at 11:23 PM, Prasanna S. Dhakephalkar
<prasann...@merajob.in> wrote:
> Hi John,
>
> I need to formulate a query where the both query variable are from document.
> Like get me all documents where var_1 >  var_2 (var_1 and var_2 both are in 
> document.)
>
> Thanks and Regards,
>
> Prasanna.
>
>
> -Original Message-
> From: John Bickerstaff [mailto:j...@johnbickerstaff.com]
> Sent: Wednesday, October 26, 2016 9:26 PM
> To: solr-user@lucene.apache.org
> Subject: Re: Query formulation help
>
> For what it's worth- you can do some complex stuff - including using document 
> fields as "variables" -- I did it on an Solr query endpoint (like
> /search) because I had stuff that was constant for every query.  The syntax 
> is challenging, but it can be done.
>
> I won't confuse the issue more unless you need something like that - let me 
> know if you do.
>
> On Wed, Oct 26, 2016 at 9:52 AM, Tom Evans <tevans...@googlemail.com> wrote:
>
>> On Wed, Oct 26, 2016 at 4:00 PM, Prasanna S. Dhakephalkar
>> <prasann...@merajob.in> wrote:
>> > Hi,
>> >
>> > Thanks for reply, I did
>> >
>> > "q": "cost:[2 TO (2+5000)]"
>> >
>> > Got
>> >
>> >   "error": {
>> > "msg": "org.apache.solr.search.SyntaxError: Cannot parse
>> 'cost:[2 to (2+5000)]': Encountered \"  \"(2+5000)
>> \"\" at line 1, column 18.\nWas expecting one of:\n\"]\" ...\n\"}\"
>> ...\n",
>> >   }
>> >
>> > I want solr to do the addition.
>> > I tried
>> > "q": "cost:[2 TO (2+5000)]"
>> > "q": "cost:[2 TO sum(2,5000)]"
>> >
>> > I has not worked. I am missing something. I donot know what. May be
>> > how
>> to invoke functions.
>> >
>> > Regards,
>> >
>> > Prasanna.
>>
>> Sorry, I was unclear - do the maths before constructing the query!
>>
>> You might be able to do this with function queries, but why bother? If
>> the number is fixed, then fix it in the query, if it varies then there
>> must be some code executing on your client that can be used to do a
>> simple addition.
>>
>> Cheers
>>
>> Tom
>>
>


RE: Query formulation help

2016-11-05 Thread Prasanna S. Dhakephalkar
Hi John,

I need to formulate a query where the both query variable are from document.
Like get me all documents where var_1 >  var_2 (var_1 and var_2 both are in 
document.)

Thanks and Regards,

Prasanna.


-Original Message-
From: John Bickerstaff [mailto:j...@johnbickerstaff.com] 
Sent: Wednesday, October 26, 2016 9:26 PM
To: solr-user@lucene.apache.org
Subject: Re: Query formulation help

For what it's worth- you can do some complex stuff - including using document 
fields as "variables" -- I did it on an Solr query endpoint (like
/search) because I had stuff that was constant for every query.  The syntax is 
challenging, but it can be done.

I won't confuse the issue more unless you need something like that - let me 
know if you do.

On Wed, Oct 26, 2016 at 9:52 AM, Tom Evans <tevans...@googlemail.com> wrote:

> On Wed, Oct 26, 2016 at 4:00 PM, Prasanna S. Dhakephalkar 
> <prasann...@merajob.in> wrote:
> > Hi,
> >
> > Thanks for reply, I did
> >
> > "q": "cost:[2 TO (2+5000)]"
> >
> > Got
> >
> >   "error": {
> > "msg": "org.apache.solr.search.SyntaxError: Cannot parse
> 'cost:[2 to (2+5000)]': Encountered \"  \"(2+5000)
> \"\" at line 1, column 18.\nWas expecting one of:\n\"]\" ...\n\"}\"
> ...\n",
> >   }
> >
> > I want solr to do the addition.
> > I tried
> > "q": "cost:[2 TO (2+5000)]"
> > "q": "cost:[2 TO sum(2,5000)]"
> >
> > I has not worked. I am missing something. I donot know what. May be 
> > how
> to invoke functions.
> >
> > Regards,
> >
> > Prasanna.
>
> Sorry, I was unclear - do the maths before constructing the query!
>
> You might be able to do this with function queries, but why bother? If 
> the number is fixed, then fix it in the query, if it varies then there 
> must be some code executing on your client that can be used to do a 
> simple addition.
>
> Cheers
>
> Tom
>



RE: Query formulation help

2016-10-26 Thread Prasanna S. Dhakephalkar
John, 

You are right, I am also looking for document fields as variables.
That was going to be my next trials.

I have been using admin panel for trying out queries.

Regards,

Prasanna.

-Original Message-
From: John Bickerstaff [mailto:j...@johnbickerstaff.com] 
Sent: Wednesday, October 26, 2016 9:26 PM
To: solr-user@lucene.apache.org
Subject: Re: Query formulation help

For what it's worth- you can do some complex stuff - including using document 
fields as "variables" -- I did it on an Solr query endpoint (like
/search) because I had stuff that was constant for every query.  The syntax is 
challenging, but it can be done.

I won't confuse the issue more unless you need something like that - let me 
know if you do.

On Wed, Oct 26, 2016 at 9:52 AM, Tom Evans <tevans...@googlemail.com> wrote:

> On Wed, Oct 26, 2016 at 4:00 PM, Prasanna S. Dhakephalkar 
> <prasann...@merajob.in> wrote:
> > Hi,
> >
> > Thanks for reply, I did
> >
> > "q": "cost:[2 TO (2+5000)]"
> >
> > Got
> >
> >   "error": {
> > "msg": "org.apache.solr.search.SyntaxError: Cannot parse
> 'cost:[2 to (2+5000)]': Encountered \"  \"(2+5000)
> \"\" at line 1, column 18.\nWas expecting one of:\n\"]\" ...\n\"}\"
> ...\n",
> >   }
> >
> > I want solr to do the addition.
> > I tried
> > "q": "cost:[2 TO (2+5000)]"
> > "q": "cost:[2 TO sum(2,5000)]"
> >
> > I has not worked. I am missing something. I donot know what. May be 
> > how
> to invoke functions.
> >
> > Regards,
> >
> > Prasanna.
>
> Sorry, I was unclear - do the maths before constructing the query!
>
> You might be able to do this with function queries, but why bother? If 
> the number is fixed, then fix it in the query, if it varies then there 
> must be some code executing on your client that can be used to do a 
> simple addition.
>
> Cheers
>
> Tom
>



Re: Query formulation help

2016-10-26 Thread John Bickerstaff
For what it's worth- you can do some complex stuff - including using
document fields as "variables" -- I did it on an Solr query endpoint (like
/search) because I had stuff that was constant for every query.  The syntax
is challenging, but it can be done.

I won't confuse the issue more unless you need something like that - let me
know if you do.

On Wed, Oct 26, 2016 at 9:52 AM, Tom Evans  wrote:

> On Wed, Oct 26, 2016 at 4:00 PM, Prasanna S. Dhakephalkar
>  wrote:
> > Hi,
> >
> > Thanks for reply, I did
> >
> > "q": "cost:[2 TO (2+5000)]"
> >
> > Got
> >
> >   "error": {
> > "msg": "org.apache.solr.search.SyntaxError: Cannot parse
> 'cost:[2 to (2+5000)]': Encountered \"  \"(2+5000)
> \"\" at line 1, column 18.\nWas expecting one of:\n\"]\" ...\n\"}\"
> ...\n",
> >   }
> >
> > I want solr to do the addition.
> > I tried
> > "q": "cost:[2 TO (2+5000)]"
> > "q": "cost:[2 TO sum(2,5000)]"
> >
> > I has not worked. I am missing something. I donot know what. May be how
> to invoke functions.
> >
> > Regards,
> >
> > Prasanna.
>
> Sorry, I was unclear - do the maths before constructing the query!
>
> You might be able to do this with function queries, but why bother? If
> the number is fixed, then fix it in the query, if it varies then there
> must be some code executing on your client that can be used to do a
> simple addition.
>
> Cheers
>
> Tom
>


Re: Query formulation help

2016-10-26 Thread Tom Evans
On Wed, Oct 26, 2016 at 4:00 PM, Prasanna S. Dhakephalkar
 wrote:
> Hi,
>
> Thanks for reply, I did
>
> "q": "cost:[2 TO (2+5000)]"
>
> Got
>
>   "error": {
> "msg": "org.apache.solr.search.SyntaxError: Cannot parse 'cost:[2 to 
> (2+5000)]': Encountered \"  \"(2+5000) \"\" at line 1, 
> column 18.\nWas expecting one of:\n\"]\" ...\n\"}\" ...\n",
>   }
>
> I want solr to do the addition.
> I tried
> "q": "cost:[2 TO (2+5000)]"
> "q": "cost:[2 TO sum(2,5000)]"
>
> I has not worked. I am missing something. I donot know what. May be how to 
> invoke functions.
>
> Regards,
>
> Prasanna.

Sorry, I was unclear - do the maths before constructing the query!

You might be able to do this with function queries, but why bother? If
the number is fixed, then fix it in the query, if it varies then there
must be some code executing on your client that can be used to do a
simple addition.

Cheers

Tom


Re: Query formulation help

2016-10-26 Thread John Bickerstaff
Ahh - I see what you're after (I think)

This page should be helpful for you:

https://cwiki.apache.org/confluence/display/solr/Function+Queries

again, I'd try using the Admin UI as a test phase to get things right (and
see the syntax in the URL that comes back on the response)

Open the edismax section of the Admin UI to find fields that you can use to
enter function queries and things like this...

In the case of X + Y, you're probably interested in the "sum" function

HTH...

On Wed, Oct 26, 2016 at 9:28 AM, Shawn Heisey  wrote:

> On 10/26/2016 9:00 AM, Prasanna S. Dhakephalkar wrote:
> > Hi, Thanks for reply, I did "q": "cost:[2 TO (2+5000)]"
>
> Solr doesn't support doing math in that way in a query, except with
> dates.  It's invalid syntax for a range query.  Tom's reply was correct,
> but was phrased in a way that makes a potential promise that Solr won't
> deliver.
>
> https://cwiki.apache.org/confluence/display/solr/Working+with+Dates#
> WorkingwithDates-DateMath
>
> There might be a way to somehow use function query to do it, but if it's
> possible, I do not know how to write it.  If it's even possible, the
> syntax probably would not be straightforward.
>
> The way I would do your query is to have my code do the calculation and
> use 25000 directly instead of 2+5000.
>
> Thanks,
> Shawn
>
>


Re: Query formulation help

2016-10-26 Thread Shawn Heisey
On 10/26/2016 9:00 AM, Prasanna S. Dhakephalkar wrote:
> Hi, Thanks for reply, I did "q": "cost:[2 TO (2+5000)]"

Solr doesn't support doing math in that way in a query, except with
dates.  It's invalid syntax for a range query.  Tom's reply was correct,
but was phrased in a way that makes a potential promise that Solr won't
deliver.

https://cwiki.apache.org/confluence/display/solr/Working+with+Dates#WorkingwithDates-DateMath

There might be a way to somehow use function query to do it, but if it's
possible, I do not know how to write it.  If it's even possible, the
syntax probably would not be straightforward.

The way I would do your query is to have my code do the calculation and
use 25000 directly instead of 2+5000.

Thanks,
Shawn



Re: Query formulation help

2016-10-26 Thread John Bickerstaff
It looks to me as if it's blowing up on syntax.

I don't have access to the Admin UI right now, but I would suggest
attempting to submit this query via the UI and examining the URL that comes
back.  That frequently solves my more frustrating syntax problems.

I.E. try putting the cost:[...] in the query box on the UI (no quotes
as a first try) and see what happens

Alternatively, try putting cost as the query field (qf) and just the 2
TO (2000) in the query box...

Apologies - I don't have the UI in front of me or I'd try it myself, but
this is the general idea - try to issue the query in the Admin UI and
observe the syntax in the URL that is returned at the top of the page along
with the results.

On Wed, Oct 26, 2016 at 9:00 AM, Prasanna S. Dhakephalkar <
prasann...@merajob.in> wrote:

> Hi,
>
> Thanks for reply, I did
>
> "q": "cost:[2 TO (2+5000)]"
>
> Got
>
>   "error": {
> "msg": "org.apache.solr.search.SyntaxError: Cannot parse 'cost:[2
> to (2+5000)]': Encountered \"  \"(2+5000) \"\" at line
> 1, column 18.\nWas expecting one of:\n\"]\" ...\n\"}\" ...\n",
>   }
>
> I want solr to do the addition.
> I tried
> "q": "cost:[2 TO (2+5000)]"
> "q": "cost:[2 TO sum(2,5000)]"
>
> I has not worked. I am missing something. I donot know what. May be how to
> invoke functions.
>
> Regards,
>
> Prasanna.
>
>
> -Original Message-
> From: Tom Evans [mailto:tevans...@googlemail.com]
> Sent: Wednesday, October 26, 2016 3:07 PM
> To: solr-user@lucene.apache.org
> Subject: Re: Query formulation help
>
> On Wed, Oct 26, 2016 at 8:03 AM, Prasanna S. Dhakephalkar <
> prasann...@merajob.in> wrote:
> > Hi,
> >
> >
> >
> > May be very rudimentary question
> >
> >
> >
> > There is a integer field in a core : "cost"
> >
> > Need to build a query that will return documents where 0  <
> > "cost"-given_number  <  500
> >
>
> cost:[given_number TO (500+given_number)]
>
>


RE: Query formulation help

2016-10-26 Thread Prasanna S. Dhakephalkar
Hi,

Thanks for reply, I did

"q": "cost:[2 TO (2+5000)]"

Got

  "error": {
"msg": "org.apache.solr.search.SyntaxError: Cannot parse 'cost:[2 to 
(2+5000)]': Encountered \"  \"(2+5000) \"\" at line 1, 
column 18.\nWas expecting one of:\n\"]\" ...\n\"}\" ...\n",
  }

I want solr to do the addition.
I tried 
"q": "cost:[2 TO (2+5000)]"
"q": "cost:[2 TO sum(2,5000)]"

I has not worked. I am missing something. I donot know what. May be how to 
invoke functions.

Regards,

Prasanna.


-Original Message-
From: Tom Evans [mailto:tevans...@googlemail.com] 
Sent: Wednesday, October 26, 2016 3:07 PM
To: solr-user@lucene.apache.org
Subject: Re: Query formulation help

On Wed, Oct 26, 2016 at 8:03 AM, Prasanna S. Dhakephalkar 
<prasann...@merajob.in> wrote:
> Hi,
>
>
>
> May be very rudimentary question
>
>
>
> There is a integer field in a core : "cost"
>
> Need to build a query that will return documents where 0  < 
> "cost"-given_number  <  500
>

cost:[given_number TO (500+given_number)]



Re: Query formulation help

2016-10-26 Thread Tom Evans
On Wed, Oct 26, 2016 at 8:03 AM, Prasanna S. Dhakephalkar
 wrote:
> Hi,
>
>
>
> May be very rudimentary question
>
>
>
> There is a integer field in a core : "cost"
>
> Need to build a query that will return documents where 0  <
> "cost"-given_number  <  500
>

cost:[given_number TO (500+given_number)]