2011-11-28 48 views
2

我如何得到所有从表中的NULL值的记录,而不使用以下条件不使用“IS NULL”条件从数据库中获取“NULL”记录。?

"WHERE field_name IS NULL OR field_name = 'NULL' " 

有没有解决这个任何MySQL的内置功能..?

实际上这是我在面对MYSQL的其中一个面临的问题。我非常渴望知道解决方案。

我真的很感激你的答案,请帮助我。

谢谢。

+0

不完全相信你”除非你正在寻找'ifnull()'语句,否则不要问。 http://dev.mysql.com/doc/refman/5.0/en/control-flow-functions.html#function_ifnull –

+0

我认为你不能检查NULL值为field_name ='NULL',它会检查值为NULL的字符串,而不是NULL值。 – gprathour

+0

@GP Singh:是的..我在寻找找不到空值的字符串“NULL”值。 – Chandresh

回答

2

你可以试试这个

select COALESCE(colname,0) from table where 
colname != coalesc(colname,0); 
+0

好的谢谢你的快速回应。我会检查出来并尽快回复。 – Chandresh

+0

这似乎有点不正确,你应该比较'colname!= coalesc(colname,0)' – ajreal

+0

是的bcz我现在不试试这个..所以我写可能会改变条件 –

0

你需要一个Join和空安全等于<=>

SELECT a.* 
FROM table a 
     JOIN (SELECT NULL AS v) b 
     ON a.field_name <=> b.v 
0

你也可以试试这个

SELECT * 
FROM test_null 
WHERE id NOT IN (
    SELECT id 
    FROM test_null 
    WHERE !colval 
)