动态sql的test数值型的条件语句

今天开发中遇到一个诡异的bug

需要对伪删除的数据进行筛选,标记为0是正常,1为删除。

心想只要将查询对象的isDelete字段置为0去查就好了,结果还是全部查出来了,根本没做筛选。

去掉if条件跑出来是对的。

看了网上的说法应该是mybatis的一个bug,原因不详,如有知道原因的还请不吝赐教。

最后的解决方法是在后面加 or 做判断

你可能感兴趣的:(坑,开发软件)