SQL应该永远不会返回任何东西,但确实如此

Rub*_*uck 2 sql

我遇到了以下SQL语句:


    SELECT A.NAME
    FROM   THE_TABLE A
    WHERE  A.NAME LIKE '%JOHN%DOE%'
    AND    ((A.NUM_FIELD/1) - (A.NUM_FIELD/2)*2 <> 0)
最后一个条件,令"((A.NUM_FIELD/1) - (A.NUM_FIELD/2)*2 <> 0)"我感到困惑.决定操作顺序的执行,它应该总是导致0A.NUM_FIELD / 2.

SQL如何仍然从此视图返回记录?如果它总是导致原始值的一半,为什么会这样?(这是一个交付的SQL包)