从mysql中的非空列中选择值

时间:2016-01-25 23:28:43

标签: mysql

  

表格照片-------

photo1  imagem1.jpg
photo2  imagem2.jpg
photo3  empty
photo4  empty
photo5  enpty

我有一张桌子,有5列代表照片。 所以, 我想从表格,所有列中选择*但是如果其中一个或多个是空的,我不想选择。那可能吗?

例如,如果我这样做

Select * from table Photos where photo1 is not null, and photo2 is not null, and photo3 is not null and photo4 is not null and photo5 is not null 

这是不可能的,因为如果其中一个是空的......那么选择不会给出任何值。

任何人都知道另一种方式吗?

而且,我需要那个,因为如果我想这样做: 问题是....当我使用php例如这个

if($project['photo5']!='' and $project['photo5']!=null){ 
(here i show the picture)
}

如果该行为空...将忽略php并显示错误图像

1 个答案:

答案 0 :(得分:1)

如果任何一个值concat为null(mySQL DOCS),

Concat()将返回null。因为你只想显示没有null的记录连接在一起并检查not null。

Select * 
from table Photos 
where concat(photo1,photo2,photo3,photo4,photo5) is not null 

AND ...如果您使用or代替AND而非not,则您的方法应该有效。我发现以上更容易阅读。