检查是否填写了1个记录字段

时间:2013-11-06 08:43:23

标签: php mysql sql

我想知道是否可以使用mysql来检查我拉出的3条记录中的1条是否填写了特定字段?

例如,我有以下记录:

  • 记录1:name ='Richard';年龄= 42岁;位置='';爱好='';
  • 记录2:name ='Stacy';年龄= 22岁;位置='阿姆斯特丹';爱好='';
  • 记录3:name ='Jared';年龄= 46岁;位置='';爱好='';

我写了一个脚本,列出所有记录,然后打印出来。现在它显示了包含所有信息的所有记录(即使是空的)但是我想要检查是否填写了记录的所有字段。

因此,在上面的示例中,我希望脚本列出名称,年龄和位置(因为记录2已填写)但不是业余爱好(因为这些都是空的)。

这可以通过MySQL实现,还是必须通过PHP检查?

提前致谢!

1 个答案:

答案 0 :(得分:1)

this。您只想选择非空列,请尝试以下方法:

SELECT * FROM
(
    SELECT col1 AS col FROM yourtable
    UNION
    SELECT col2 AS col FROM yourtable
    UNION
    -- ...
    UNION
    SELECT coln AS col FROM yourtable
) T1
WHERE col IS NOT NULL

注意:取自引用的答案