- where 条件中 包含 OR 和 IS NULL 的 SQL 过滤会失效 。 例如: select * from temp where id = 1 or id is null 这样的结果筛选出来 不会包含 id = null的结果, 把id = 1 去掉 只有id is null 这样的结果是正确的.
据说是flink 1.12 底层优化造成 , is null 被优化成了 is = null , 因为sql 中 Null 的语义是unknown 所以条件不会成立。 无法过滤得到 is null 条件的数据。 1.3版本被优化。