2010-11-25 179 views

回答

0

null从未包含在这些比较中,而是使用null。

1

NULL是SQL特殊。您拥有的条件:tuan_id <> 14仅适用于14以外的值。对于行时,tuan_idNULL,则:

tuan_id <> 14 

将是:

NULL <> 14 

计算结果为:

UNKNOWN 

所以这些行是删除。当他们评估为TRUE时,WHERE条件得到满足。当他们评估为FALSEUNKNOWN时,他们被拒绝。

SQL使用3-valued logic


所以,如果你想删除空白点,以及,你可以用这个语句:

DELETE 
FROM tuan_details 
WHERE tuan_id <> 14 
    OR tuan_id IS NULL ;