summaryrefslogtreecommitdiffstats
path: root/tests/dialects/test_mysql.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/dialects/test_mysql.py')
-rw-r--r--tests/dialects/test_mysql.py19
1 files changed, 17 insertions, 2 deletions
diff --git a/tests/dialects/test_mysql.py b/tests/dialects/test_mysql.py
index af98249..5064dbe 100644
--- a/tests/dialects/test_mysql.py
+++ b/tests/dialects/test_mysql.py
@@ -23,6 +23,8 @@ class TestMySQL(Validator):
self.validate_identity("SELECT TRIM('bla' FROM ' XXX ')")
self.validate_identity("@@GLOBAL.max_connections")
+ self.validate_identity("CREATE TABLE A LIKE B")
+
# SET Commands
self.validate_identity("SET @var_name = expr")
self.validate_identity("SET @name = 43")
@@ -177,14 +179,27 @@ class TestMySQL(Validator):
"GROUP_CONCAT(DISTINCT x ORDER BY y DESC)",
write={
"mysql": "GROUP_CONCAT(DISTINCT x ORDER BY y DESC SEPARATOR ',')",
- "sqlite": "GROUP_CONCAT(DISTINCT x ORDER BY y DESC)",
+ "sqlite": "GROUP_CONCAT(DISTINCT x)",
+ "tsql": "STRING_AGG(x, ',') WITHIN GROUP (ORDER BY y DESC)",
+ "postgres": "STRING_AGG(DISTINCT x, ',' ORDER BY y DESC NULLS LAST)",
+ },
+ )
+ self.validate_all(
+ "GROUP_CONCAT(x ORDER BY y SEPARATOR z)",
+ write={
+ "mysql": "GROUP_CONCAT(x ORDER BY y SEPARATOR z)",
+ "sqlite": "GROUP_CONCAT(x, z)",
+ "tsql": "STRING_AGG(x, z) WITHIN GROUP (ORDER BY y)",
+ "postgres": "STRING_AGG(x, z ORDER BY y NULLS FIRST)",
},
)
self.validate_all(
"GROUP_CONCAT(DISTINCT x ORDER BY y DESC SEPARATOR '')",
write={
"mysql": "GROUP_CONCAT(DISTINCT x ORDER BY y DESC SEPARATOR '')",
- "sqlite": "GROUP_CONCAT(DISTINCT x ORDER BY y DESC, '')",
+ "sqlite": "GROUP_CONCAT(DISTINCT x, '')",
+ "tsql": "STRING_AGG(x, '') WITHIN GROUP (ORDER BY y DESC)",
+ "postgres": "STRING_AGG(DISTINCT x, '' ORDER BY y DESC NULLS LAST)",
},
)
self.validate_identity(