Description
SQL statements:
a = 0 or a is null -- returns true when a is null a in (0, null) -- returns null when a is null
have different semantics when a is null, we should not represent it as a sarg after RexSimplify,
check this test in RexProgramTest:
@Test void testSimplifyInOr() {
or(
gt(vInt(), literal(0)),
isNull(vInt())),
">(?0.int0, 0)");
}
Attachments
Issue Links
- duplicates
-
CALCITE-4446 Implement three-valued logic for SEARCH operator
- Closed