
create table test1 (a Float32,  b Float32 ) engine = MergeTree order by a ;
insert into test1 values (0.1,0.1), (0.2,0.2);
select count() from test1 where b = 0.1;
0 
select count() from test1 where b = toFloat32(0.1);
1
select count() from test1 where a > 0;
0
select count() from test1 where a > 0.0;
2
select count() from test1 where b > 0;
2

version 22.1.3.7  

if (type == Node::Type::And)
        {
            
            if (left->type == Node::Type::False)
                return left;
            
            if (right->type == Node::Type::False)
                return right;
            
            if (left->type == Node::Type::True)
                return right;
            
            if (right->type == Node::Type::True)
                return left;
        }
        if (type == Node::Type::Or)
        {
            
            if (left->type == Node::Type::False)
                return right;
            
            if (right->type == Node::Type::False)
                return left;
            
            if (left->type == Node::Type::True)
                return left;
            
            if (right->type == Node::Type::True)
                return right;
        }