[ https://issues.apache.org/jira/browse/DERBY-2998?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12574892#action_12574892 ]
Thomas Nielsen commented on DERBY-2998: --------------------------------------- I considered your proposed change, but turned it down as I thought it too general. That's why I ended up checking for the WindowNodes - we know it's at the top of the child *if* it's there. I'll do some tracing to see whether my conclusion was wrong or not. Wrt to window functions and ordering: Yes, the below ResultSets can return rows in an arbitrary order depending on indexes or not - and on other characteristics of the database engine. Very familiar with this from the distributed database I've worked on earlier. And, yes, my experience is it's something most users run into somehow :) The same goes for joins - think 2 rows joined with 3 rows. No *guarantee* that the join is performed a certain way and presence of an index may cause different row ordering that without. This really applies to all queries, as long as there is no ORDER BY clause, there is really no guarantee for the ordering. Since Derby does not support ordering in subqueries, we have no option but to take what the selected conglomorate supplies of row ordering. I'll add a paragraph about this behaviour to the row_number page in the reference manual. Note that once we get better/full window support, we should be able to specify ordering of the window in the window definition. This will hopefully help those that require the window to be ordered, and *may* work around the no-orderby-in-subquery limitation currently in Derby :) > Add support for ROW_NUMBER() window function > -------------------------------------------- > > Key: DERBY-2998 > URL: https://issues.apache.org/jira/browse/DERBY-2998 > Project: Derby > Issue Type: Sub-task > Components: SQL > Reporter: Thomas Nielsen > Assignee: Thomas Nielsen > Priority: Minor > Attachments: d2998-10.diff, d2998-10.stat, d2998-11.diff, > d2998-12.diff, d2998-12.stat, d2998-13.diff, d2998-13.stat, d2998-14.diff, > d2998-14.stat, d2998-15.diff, d2998-15.stat, d2998-16.diff, d2998-16.stat, > d2998-17.diff, d2998-17.stat, d2998-18.diff, d2998-18.stat, d2998-19.diff, > d2998-19.stat, d2998-4.diff, d2998-4.stat, d2998-5.diff, d2998-5.stat, > d2998-6.diff, d2998-6.stat, d2998-7.diff, d2998-7.stat, d2998-8.diff, > d2998-8.stat, d2998-9-derby.log, d2998-9.diff, d2998-9.stat, > d2998-doc-1.diff, d2998-doc-1.stat, d2998-doc-2.diff, d2998-doc-2.stat, > d2998-followup-2.diff, d2998-followup-2.stat, d2998-followup-distinct.diff, > d2998-followup-distinct.stat, d2998-followup-issue1.diff, > d2998-followup-issue1.stat, d2998-followup-issue4.diff, > d2998-followup-issue4.stat, d2998-followup-testsuite.diff, > d2998-followup-testsuite.stat, d2998-test.diff, d2998-test.stat, > d2998-test2.diff, d2998-test2.stat, d2998-test3.diff, d2998-test3.stat, > d2998-test4.diff, d2998-test4.stat, d2998-test6.diff, d2998-test7.diff, > d2998-test8.diff, d2998-test9.diff > > > As part of implementing the overall OLAP Operations features of SQL > (DERBY-581), implement the ROW_NUMBER() window function. > More information about this feature is available at > http://wiki.apache.org/db-derby/OLAPRowNumber -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.