Doug Turnbull created SOLR-9279: ----------------------------------- Summary: Add greater than, less than, etc in Solr function queries Key: SOLR-9279 URL: https://issues.apache.org/jira/browse/SOLR-9279 Project: Solr Issue Type: New Feature Security Level: Public (Default Security Level. Issues are Public) Components: search Reporter: Doug Turnbull Fix For: master (7.0)
If you use the "if" function query, you'll often expect to be able to use greater than/less than functions. For example, you might want to boost books written in the past 7 years. Unfortunately, there's no "greater than" function query that will return non-zero when the lhs > rhs. Instead to get this, you need to create really awkward function queries like I do here (http://opensourceconnections.com/blog/2014/11/26/stepwise-date-boosting-in-solr/): if(min(0,sub(ms(mydatefield),sub(ms(NOW),315569259747))),0.8,1) The pull request to be attached to this Jira adds the following function queries -gt(lhs, rhs) (returns 1 if lhs > rhs, 0 otherwise) -lt(lhs, rhs) (returns 1 if lhs < rhs, 0 otherwise) -gte -lte -eq So instead of if(min(0,sub(ms(mydatefield),sub(ms(NOW),315569259747))),0.8,1) one could now write if(lt(ms(mydatefield),315569259747,0.8,1) (if mydatefield < 315569259747 then 0.8 else 1) A bit more readable and less puzzling -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org