summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authormike bayer <mike_mp@zzzcomputing.com>2022-09-16 22:27:14 +0000
committerGerrit Code Review <gerrit@ci3.zzzcomputing.com>2022-09-16 22:27:14 +0000
commit27e02256560c37bf2dc5203c4f3cdef8ad65d736 (patch)
tree8353f3f525d1fb0d5ecab3f5afdb1384edebf8a2 /lib
parent8f8398a485a0f825a655cbec8f385a7f2d3f30b5 (diff)
parentefbe38d8e8186c1816d2d3b052f92965787649da (diff)
downloadsqlalchemy-27e02256560c37bf2dc5203c4f3cdef8ad65d736.tar.gz
Merge "Support GROUP BY ROLLUP on MySql/MariaDB" into main
Diffstat (limited to 'lib')
-rw-r--r--lib/sqlalchemy/dialects/mysql/base.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/sqlalchemy/dialects/mysql/base.py b/lib/sqlalchemy/dialects/mysql/base.py
index 4b0a5e6c5..c0521f61e 100644
--- a/lib/sqlalchemy/dialects/mysql/base.py
+++ b/lib/sqlalchemy/dialects/mysql/base.py
@@ -1210,6 +1210,12 @@ class MySQLCompiler(compiler.SQLCompiler):
def visit_random_func(self, fn, **kw):
return "rand%s" % self.function_argspec(fn)
+ def visit_rollup_func(self, fn, **kw):
+ clause = ", ".join(
+ elem._compiler_dispatch(self, **kw) for elem in fn.clauses
+ )
+ return f"{clause} WITH ROLLUP"
+
def visit_sequence(self, seq, **kw):
return "nextval(%s)" % self.preparer.format_sequence(seq)