gpt4 book ai didi

php - 如何检查记录的所有字段不为 NULL 或空?

转载 作者:行者123 更新时间:2023-11-29 11:34:48 24 4
gpt4 key购买 nike

我有一条来自 MySQL 数据库的记录,需要对其进行验证以查看所有字段是否都有值或发布一些警报。

最好的方法是将所有字段值放入一个数组中,然后检查 NOT NULL 或 Empty 的 SUM 以查看它是否与所选字段的数量匹配?

示例:$结果= |值(value)|空|空 |值(value)|空 |

在此示例中,记录具有来自 5 个字段的值,其中 2 个字段不为 Null 或空

我需要验证来查看所有 5 个字段何时都具有某些值

最佳答案

您可以使用GREATEST (或LEAST):

SELECT * 
FROM table1
WHERE GREATEST(col1, col2, col3, col4) IS NOT NULL

参见SQL fiddle

这个想法是 GREATEST 需要检查所有参数,因为带有 NULL 的表达式将返回 NULL (请参阅 here对于该规则的异常(exception)情况),如果任何参数为 NULLGREATEST 将返回 NULL

以上将过滤符合条件的记录,即没有 NULL 值的记录。出于同样的想法,您可以不过滤某些内容,但添加有关其是否具有 NULL 的信息:

SELECT *, 
CASE WHEN GREATEST(col1, col2, col3, col4) IS NULL
THEN 0
ELSE 1
END AS is_OK
FROM table1

现在,结果中将多出一个值为 0 或 1 的列。它指示您的列是否全部不为 NULL

关于php - 如何检查记录的所有字段不为 NULL 或空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36810221/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com