diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2022-10-13 08:47:37 -0400 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2022-10-13 08:47:37 -0400 |
| commit | 08880fc5bb6467bce684dfbe7995b3f3b32aee57 (patch) | |
| tree | 88351dd16823c3c9c0aa94a838d09043cca38c9a | |
| parent | bc3541f79d2e26cd51e3cb78eaabbd1136c8a30a (diff) | |
| download | sqlalchemy-08880fc5bb6467bce684dfbe7995b3f3b32aee57.tar.gz | |
rework test query to work on MSSQL
Change-Id: I14ea04085703736daf78fe0cf307925c192c5e0e
| -rw-r--r-- | test/orm/test_dynamic.py | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/test/orm/test_dynamic.py b/test/orm/test_dynamic.py index 505594e7c..0af61949c 100644 --- a/test/orm/test_dynamic.py +++ b/test/orm/test_dynamic.py @@ -1465,9 +1465,16 @@ class DynamicUOWTest( sess.add(u) sess.commit() + from sqlalchemy import case + + # the byzantine syntax here is so the query works on MSSQL isnull_stmt = select( - addresses.c.user_id == None, func.count("*") - ).group_by(addresses.c.user_id == None) + case((addresses.c.user_id == None, True), else_=False), + func.count("*"), + ).group_by( + case((addresses.c.user_id == None, True), else_=False), + addresses.c.user_id, + ) eq_( {isnull: count for isnull, count in sess.execute(isnull_stmt)}, |
