null列的值不参与比较

假如数据库有表emp:

empno name   age

001      lucy      22

002      lily        null

003      lilei       null

004      lucy      null

005      pear      null

006      pear      null

当执行sql:

SELECT empno FROM `emp` where age != 22;

返回的竟然一条都没有;

结论: null值是不参与比较的, age != 22 , 所有null的那些列都被过滤去掉了.

关键时刻注意这个特性. 

 =====================

在SQL中,NULL值与任何其它值的比较(即使是NULL)永远不会为“真”。包含NULL的表达式总是会导出NULL值

 http://doc.mysql.cn/mysql5/refman-5.1-zh.html-chapter/problems.html#problems-with-null

猜你喜欢

转载自niewj.iteye.com/blog/2333392
今日推荐