2012-12-16 88 views
0

假设表具有INT类型的列num,并且该列中的值允许为NULL。现在,只要某些行有num单元设置为某个值,它是NULL对于其他行,我该如何选择,其中num不等于特定值的所有行,包括其中numNULL行,只使用一个条件?仅基于一个条件选择基于不相等的行

例如,如果num价值我想从选择中排除是5,我将不得不使用SELECT查询有两个条件:

SELECT * FROM `table` WHERE `num` != 5 OR `num` IS NULL; 

但如何使只使用一个条件这个简单检索?

+0

我想不出任何解决方案......为什么这两个条件是错误的?也许看看IN吧? http://dev.mysql.com/doc/refman/5.0/en/comparison-operators.html#function_in – Tim

+0

@Tim性能原因 –

+0

然后IN不会帮你。 – Tim

回答

2

希望这会帮助你。

SELECT * FROM `table` WHERE ifnull(`num`,0) != 5;