def visit_binary(self, binary, **kwargs): """Move bind parameters to the right-hand side of an operator, where possible. """ if (isinstance(binary.left, expression._BindParamClause) and binary.operator == operator.eq and not isinstance(binary.right, expression._BindParamClause)): return self.process( expression._BinaryExpression(binary.right, binary.left, binary.operator), **kwargs) else: if ((binary.operator is operator.eq or binary.operator is operator.ne) and ((isinstance(binary.left, expression._FromGrouping) and isinstance(binary.left.element, expression._ScalarSelect)) or (isinstance(binary.right, expression._FromGrouping) and isinstance(binary.right.element, expression._ScalarSelect)) or isinstance(binary.left, expression._ScalarSelect) or isinstance(binary.right, expression._ScalarSelect))): op = binary.operator == operator.eq and "IN" or "NOT IN" return self.process( expression._BinaryExpression(binary.left, binary.right, op), **kwargs) return super(MSSQLCompiler, self).visit_binary(binary, **kwargs)
def visit_binary(self, binary, **kwargs): """Move bind parameters to the right-hand side of an operator, where possible. """ if ( isinstance(binary.left, expression._BindParamClause) and binary.operator == operator.eq and not isinstance(binary.right, expression._BindParamClause) ): return self.process(expression._BinaryExpression(binary.right, binary.left, binary.operator), **kwargs) else: if (binary.operator is operator.eq or binary.operator is operator.ne) and ( ( isinstance(binary.left, expression._FromGrouping) and isinstance(binary.left.element, expression._ScalarSelect) ) or ( isinstance(binary.right, expression._FromGrouping) and isinstance(binary.right.element, expression._ScalarSelect) ) or isinstance(binary.left, expression._ScalarSelect) or isinstance(binary.right, expression._ScalarSelect) ): op = binary.operator == operator.eq and "IN" or "NOT IN" return self.process(expression._BinaryExpression(binary.left, binary.right, op), **kwargs) return super(MSSQLCompiler, self).visit_binary(binary, **kwargs)
def visit_binary(self, binary): """Move bind parameters to the right-hand side of an operator, where possible.""" if isinstance(binary.left, expression._BindParamClause ) and binary.operator == operator.eq: return self.process( expression._BinaryExpression(binary.right, binary.left, binary.operator)) else: return super(SybaseSQLCompiler, self).visit_binary(binary)
def visit_binary(self, binary, **kwargs): """Move bind parameters to the right-hand side of an operator, where possible.""" if isinstance(binary.left, expression._BindParamClause) and binary.operator == operator.eq: return self.process(expression._BinaryExpression(binary.right, binary.left, binary.operator), **kwargs) else: return super(MSSQLCompiler, self).visit_binary(binary, **kwargs)