diff options
Diffstat (limited to 'sqlglot/optimizer/simplify.py')
-rw-r--r-- | sqlglot/optimizer/simplify.py | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sqlglot/optimizer/simplify.py b/sqlglot/optimizer/simplify.py index 1ed3ca2..28ae86d 100644 --- a/sqlglot/optimizer/simplify.py +++ b/sqlglot/optimizer/simplify.py @@ -347,8 +347,9 @@ def _simplify_binary(expression, a, b): if isinstance(expression, exp.Mul): return exp.Literal.number(a * b) if isinstance(expression, exp.Div): + # engines have differing int div behavior so intdiv is not safe if isinstance(a, int) and isinstance(b, int): - return exp.Literal.number(a // b) + return None return exp.Literal.number(a / b) boolean = eval_boolean(expression, a, b) @@ -491,7 +492,7 @@ def _flat_simplify(expression, simplifier, root=True): if result: queue.remove(b) - queue.append(result) + queue.appendleft(result) break else: operands.append(a) |