小心,分析问题时的思维惯性

今天帮同事分析个问题,半天没想出来,后来别人分析出来了,真是惭愧。。。。。回过头想想自己为什么没有分析出来,终于找到元凶:思维惯性!!!!下面简单介绍下这个问题:

有段逻辑,是这样的-----

有个数据源,会不定时向test表写入id=2的数据

1. update test set id=5 where not exists(集合A) ;--id原来为2

2. 取test表中id为2的行,更新id=3;

3. update test set id=4 where id=3 and exists(集合A)

以上逻辑处理完毕后,发现test表中还有id=3的数据,这看似严谨的逻辑到底哪里出了问题呢?

原来是执行步骤1时,test表中还没有数据,执行步骤2时,test表才有数据,这样 not exists(集合A) 的数据就没有被更新为5,只被更新为3留了下来。。。。。。

一开始分析的时候看到test表中有数据,就惯性的认为执行步骤1时test表中也有数据,导致没有找到问题的根源,还一直认为可能是数据源来的数据有问题。所以告诫大家分析问题时,一定要小心惯性思维,再就是不要一开始就认为是其他系统有问题,这样就会禁锢你的思维。。。。。。切记切记

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值