From 34ef21909bd6ed3574e37c345ca9e10761f087bd Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Wed, 7 Aug 2013 13:28:45 -0500 Subject: - The :meth:`.Operators.notin_` operator added in 0.8 now properly produces the negation of the expression "IN" returns when used against an empty collection. Also in 0.8.3. --- lib/sqlalchemy/sql/expression.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'lib/sqlalchemy/sql/expression.py') diff --git a/lib/sqlalchemy/sql/expression.py b/lib/sqlalchemy/sql/expression.py index b00a7399a..121583cf8 100644 --- a/lib/sqlalchemy/sql/expression.py +++ b/lib/sqlalchemy/sql/expression.py @@ -2132,7 +2132,10 @@ class _DefaultColumnComparator(operators.ColumnOperators): 'contradiction, which nonetheless can be ' 'expensive to evaluate. Consider alternative ' 'strategies for improved performance.' % expr) - return expr != expr + if op is operators.in_op: + return expr != expr + else: + return expr == expr return self._boolean_compare(expr, op, ClauseList(*args).self_group(against=op), -- cgit v1.2.1