[dna-issues] [JBoss JIRA] Resolved: (DNA-552) Support BETWEEN and NOT BETWEEN in WHERE clause of SQL language and abstract query model

Randall Hauch (JIRA) jira-events at lists.jboss.org
Tue Nov 17 13:47:29 EST 2009


     [ https://jira.jboss.org/jira/browse/DNA-552?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Randall Hauch resolved DNA-552.
-------------------------------

    Resolution: Done


Marking this issue as resolved.  Further enhancements or improvements should be tracked under new issues.

> Support BETWEEN and NOT BETWEEN in WHERE clause of SQL language and abstract query model
> ----------------------------------------------------------------------------------------
>
>                 Key: DNA-552
>                 URL: https://jira.jboss.org/jira/browse/DNA-552
>             Project: DNA
>          Issue Type: Feature Request
>          Components: Graph, Query, Search
>    Affects Versions: 0.6
>            Reporter: Randall Hauch
>            Assignee: Randall Hauch
>             Fix For: 0.7
>
>
> Our search/query implementation will perform much better when it can detect a range of values in a criteria.  Currently, ranges can only be specified using the form "WHERE ... <dynamicOperand> <operator1> <staticOperand1> ... AND <dynamicOperand> <operator2> <staticOperand2> ..."  For example: 
>     WHERE ... DEPTH(myType) >= 3 AND DEPTH(myType) <=6
> SQL already has a BETWEEN operator (and corresponding NOT BETWEEN operator) that makes this not only more concise but also more easily understandable and obvious about the intent:
>     WHERE ... DEPTH(myType) BETWEEN 3 and 6
> This concept would also have to be added to the abstract query model, and in particular as a subclass of Constraint that has a DynamicOperand and two StaticOperand values.  And by adding this specialization of Constraint, we can add an optimizer rule that looks for ANDed constraints that represent a range on a DynamicOperand, and rewrite the constraints as a BETWEEN (or NOT BETWEEN).  
> Note that a NOT BETWEEN would simply wrap a BetweenCriteria with a Not.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the dna-issues mailing list