Update of /cvsroot/monetdb/sql/src/server
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv16327/src/server

Modified Files:
        sql_select.mx 
Log Message:
also find the first order by column incase of multi column order bys 


Index: sql_select.mx
===================================================================
RCS file: /cvsroot/monetdb/sql/src/server/sql_select.mx,v
retrieving revision 1.217
retrieving revision 1.218
diff -u -d -r1.217 -r1.218
--- sql_select.mx       29 Jan 2008 23:27:04 -0000      1.217
+++ sql_select.mx       31 Jan 2008 08:56:15 -0000      1.218
@@ -3639,14 +3639,23 @@
        return cur;
 }
 
+static stmt *
+find_order(stmt *s)
+{
+       assert(s->type == st_order || s->type == st_reorder);
+       while(s->type == st_reorder)
+               s = s->op1.stval;
+       return s;
+}
+
 stmt *
 sql_reorder(stmt *order, stmt *s) 
 {
        list *l = create_stmt_list();
        node *n;
        /* we need to keep the order by column, to propagate the sort property*/
-       stmt *x = order->op1.stval;
-       stmt *o = order;
+       stmt *o = find_order(order);
+       stmt *x = o->op1.stval;
 
        order = stmt_mark(stmt_reverse(order), 0);
        for (n = s->op1.lval->h; n; n = n->next) {
@@ -3656,7 +3665,7 @@
 
                if (sc != x)
                        sc = 
stmt_reverse(stmt_order(stmt_reverse(stmt_join(stmt_dup(order), stmt_dup(sc), 
cmp_equal)), 1));
-               else    /* order by column */
+               else    /* first order by column */
                        sc = stmt_mark(stmt_dup(o), 0);
                sc = stmt_alias(sc, tname, cname );
                list_append(l, sc);


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Monetdb-sql-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-sql-checkins

Reply via email to