0

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

例如,我有以下记录:

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

我编写了一个脚本,将列出所有记录然后打印它们。现在它显示了所有记录的所有信息(甚至是空的),但我想检查一下记录的所有字段是否都已填写。

所以在上面的例子中,我希望脚本列出姓名、年龄和位置(因为记录 2 已经填写)但不是爱好(因为这些都是空的)。

这可能通过 MySQL 还是我必须通过 PHP 检查?

提前致谢!

4

1 回答 1

1

看到这个。您只想选择不为空的列,因此请尝试以下操作:

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

注意:取自参考的答案

于 2013-11-06T08:50:45.377 回答