db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dag H. Wanvik (JIRA)" <j...@apache.org>
Subject [jira] [Created] (DERBY-6008) Allow ORDER BY and FETCH/OFFSET in set operators
Date Wed, 05 Dec 2012 23:55:57 GMT
Dag H. Wanvik created DERBY-6008:

             Summary: Allow ORDER BY and FETCH/OFFSET in set operators
                 Key: DERBY-6008
                 URL: https://issues.apache.org/jira/browse/DERBY-6008
             Project: Derby
          Issue Type: Improvement
          Components: SQL
            Reporter: Dag H. Wanvik

Currently, Derby doesn't allow ORDER BY nested in a set operand, e.g. in the following construct:

(select i from t1 order by j offset 1 row)    union 
(select i from t2 order by j desc offset 2 rows)

This is allowed by the standard, as far as I can understand, cf. this quote from section 7.12
in SQL 2011:

<query expression body> ::=
    <query term>
|   <query expression body> UNION [ ALL | DISTINCT ]
  [ <corresponding spec> ] <query term>
|   <query expression body> EXCEPT [ ALL | DISTINCT ]
  [ <corresponding spec> ] <query term>

<query term> ::=
   <query primary>
|  <query term> INTERSECT [ ALL | DISTINCT ]
   [ <corresponding spec> ] <query primary>

<query primary> ::=
   <simple table>
  |  <left paren> <query expression body>
     [ <order by clause> ] [ <result offset clause> ] [ <fetch first clause>
] <right paren>

I.e. the left paren chooses the second alternative in the production for <query primary>.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

View raw message