Table 1 : fld1a Char 10 fld2a Numeric 5 0 2 records fld1a fld2a ABCD 1 ABC 2 Table 2 : fld1b Char 10 fld2b Numeric 5 0 2 records fld1b fld2b ABC 1 ABC 2Can anyone explain why the following queries give different results :
select * from db1 a, db2 b where (a.fld2a=b.fld2b) AND (trim(a.fld1a)=trim(b.fld2b))Query 2 :
select * from db1 a, db2 b where (a.fld2a=b.fld2b) AND (trim(a.fld1a)=trim(b.fld2b)) AND (a.fld2a=b.fld2b)Query 3 :
select * from db1 a, db2 b where (trim(a.fld1a)=trim(b.fld2b)) AND (a.fld2a=b.fld2b)Query 2 differs from query 1 by duplicating the check for a.fld2a=b.fld2b