Skip to content

Commit de12509

Browse files
committed
solved issue with is_ and is_not
1 parent 097298f commit de12509

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

sqlalchemy_iris/base.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
from sqlalchemy.sql import between
1111
from sqlalchemy.sql import func
1212
from sqlalchemy.sql.functions import ReturnTypeFromArgs
13+
from sqlalchemy.sql.elements import Null
1314
from sqlalchemy.sql import expression
1415
from sqlalchemy.sql import schema
1516
from sqlalchemy import sql, text
@@ -445,6 +446,22 @@ def visit_is_true_unary_operator(self, element, operator, **kw):
445446
def visit_is_false_unary_operator(self, element, operator, **kw):
446447
return "%s = 0" % self.process(element.element, **kw)
447448

449+
def visit_is__binary(self, binary, operator, **kw):
450+
op = "IS" if isinstance(binary.right, Null) else "="
451+
return "%s %s %s" % (
452+
self.process(binary.left),
453+
op,
454+
self.process(binary.right),
455+
)
456+
457+
def visit_is_not_binary(self, binary, operator, **kw):
458+
op = "IS NOT" if isinstance(binary.right, Null) else "<>"
459+
return "%s %s %s" % (
460+
self.process(binary.left),
461+
op,
462+
self.process(binary.right),
463+
)
464+
448465
def get_select_precolumns(self, select, **kw):
449466
text = ""
450467
if select._distinct or select._distinct_on:

0 commit comments

Comments
 (0)