String sql1 = " select count(*) from DatePersonDate person where " +
"person.deptId=? and " +
"person.dateDate=? and " +
"(person.df is null or person.df <>1) and " +
"person.dateStatus <> ? and " +
"person.guideBookId is null";

String sql2 = " select count(*) from DatePersonDate person where " +
"person.deptId=? and " +
"person.dateDate=? and " +
"(person.df is null or person.df <>1) and " +
"person.dateStatus <> ? and " +
"(person.guideBookId.lifeStatus=? or person.guideBookId.lifeStatus=?)";
List<Object> lo1 = bs.find(sql1, new Object[]{sd,date,ds});
if(lo1.size()==0){
System.out.println("---------");
}
Object o = lo1.get(0);
System.out.println(o);

List<Object> lo2 = bs.find(sql2, new Object[]{sd,date,ds,ls1,ls2});
if(lo2.size()==0){
System.out.println("---------");
}
Object o2 = lo2.get(0);
System.out.println(o2);
结果是sql1=2;sql2=70;
这两个结果是正确的。
为什么 String sql3 = " select count(*) from DatePersonDate person where " +
"person.deptId=? and " +
"person.dateDate=? and " +
"(person.df is null or person.df <>1) and " +
"person.dateStatus <> ? and " +
                  "(person.guideBookId is null or person.guideBookId.lifeStatus=? or person.guideBookId.lifeStatus=?)";

List<Object> lo3 = bs.find(sql3, new Object[]{sd,date,ds,ls1,ls2});
if(lo3.size()==0){
System.out.println("---------");
}
Object o3 = lo3.get(0);
System.out.println(o3);sql3=70而不是72?