MYSQL LIKE 通配符排除 NULL 值

MYSQL LIKE Wildcards exclude NULL values

在我的狗数据库中,我正在尝试 select 多个值。

我有一个列 "dna" 可以是 DNA DNAComp 或 NULL

如果我 select 使用通配符即

WHERE dna LIKE "%";

我希望得到所有的狗,但我只得到 dna 不为 NULL 的狗。

我也试过了:

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

结果相似(即忽略空记录)。

有什么想法吗?

加里

我认为你应该使用

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

您可以使用 IFNULL,像这样:

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