今天在改sql查询时,把查询判断一个数据是否大于0,改为判断这个数据是否大于0或者另一个数据是否大于0
然后就在 A.col1 > 0 后面加了 or A.col2 > 0
然后查询结果出来,好像没什么不对
后面换了个数据库又执行了这条sql语句,查询结果出来一大堆
查了这个表的数据,发现符合条件的就那么几条,于是把之前刚加的 or A,col2 > 0 先去掉,又去查了一下,发现没什么问题,那么问题应该就是 or A,col2 > 0 的错误(where中还有其他 AND 连接的判断)
然后去看了一下sql的 AND 和 OR 运算符,说是在结合使用时,使用()来组成复杂表达式
然后就改成 (A.col1 > 0 or A.col2 > 0) and ······
执行后得到的结果是符合条件的
今天又是涨知识的一天啊!冲冲冲!!!