今天某同事解决一个列表不显示数据的问题,查出的原因是,因为INNER JOIN X表,X表中没有对应的记录,因此导致查不出数据,于是……就把INNER JOIN改成LEFT JOIN了事。
以前也遇到过这样解决问题的同事,在从别的系统导入数据的时候,发现有一条记录导不过来,最后检查发现,是一个“禁止导入重复数据的判断”阻止了这条数据的导入,结果这哥们儿就直接把那段判断给注释了(谢谢他,他没有删除那段判断),然后重新导了一遍……结果他一拍屁股走人了,我用了一整天+晚上的时间清理重复数据和辐射到其他系统里的重复数据(甚至动用了其他公司的人,因为重复数据也散播到了别的公司)。
系统中的很多数据判断和筛选条件99%都不是无缘无故加上的,我们在决定是否应该通过去掉这些条件来解决数据不显示的问题时,必须格外小心。我们应该首先看筛选条件或者判断中涉及的数据为何没有对应上?首先确定不是数据上的问题之后再考虑是否是筛选条件和判断的逻辑不正确,进而需要修改这些逻辑。在做决定的时候,一定要仔细考虑清楚,三思而后行。