2016-03-21 60 views
1

在我的狗分贝我试图选择多个值。MYSQL LIKE通配符排除NULL值

我有一列的“DNA”,它可以是eithe DNA DNAComp或NULL

如果我有一个通配符选择即

WHERE dna LIKE "%"; 

我希望能得到所有的狗,但我得到的只有狗在那里DNA不是NULL。

我也尝试:

WHERE dna IN( 'DNA', 'DNAComp',NULL);

具有相似的结果(即空记录被忽略)。

任何想法?

加里

+2

如果你想选择所有的狗你不需要一个WHERE,因为如果你想让所有的狗都有'SELECT * FROM dog'或类似的东西就足够了 –

回答

2

我认为你应该使用

WHERE dna IN ('DNA','DNAComp') or dna is NULL; 
0

您可以使用IFNULL,像这样:

SELECT * FROM t WHERE IFNULL(dna, '') LIKE '%'