diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2008-12-06 00:14:50 +0000 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2008-12-06 00:14:50 +0000 |
commit | 6eca02a31f9fdbc7d039a89f6f8ea212fe5121d9 (patch) | |
tree | 3c57fe4a61566acfe9e2eb22a8cd0d1a54ca8771 /lib/sqlalchemy/sql/expression.py | |
parent | ecc6c1da2adddddc09d99be582595cd41f98ac16 (diff) | |
download | sqlalchemy-6eca02a31f9fdbc7d039a89f6f8ea212fe5121d9.tar.gz |
- union() and union_all() will not whack
any order_by() that has been applied to the
select()s inside. If you union() a
select() with order_by() (presumably to support
LIMIT/OFFSET), you should also call self_group()
on it to apply parenthesis.
Diffstat (limited to 'lib/sqlalchemy/sql/expression.py')
-rw-r--r-- | lib/sqlalchemy/sql/expression.py | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/lib/sqlalchemy/sql/expression.py b/lib/sqlalchemy/sql/expression.py index 3d66ff21b..0bc7e6a49 100644 --- a/lib/sqlalchemy/sql/expression.py +++ b/lib/sqlalchemy/sql/expression.py @@ -3033,8 +3033,7 @@ class CompoundSelect(_SelectBaseMixin, FromClause): "have identical numbers of columns; select #%d has %d columns, select #%d has %d" % (1, len(self.selects[0].c), n+1, len(s.c)) ) - if s._order_by_clause: - s = s.order_by(None) + # unions group from left to right, so don't group first select if n: self.selects.append(s.self_group(self)) |