gpt4 book ai didi

mysql - MySQL单行中非空列的计数

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

我正在尝试找到一种纯粹的 MySQL 方法来执行此操作,以避免大量重复/类似的 PHP 脚本。

假设我在表格中选择一行,它可能如下所示:

| col1 | col2 | col3 | col4 | col5 | col6 |
| abc |b b a | '%kj | jh | | |

我想计算该行中有多少列不为空。所以在这个例子中它是 4。

我想出了一个解决方案,我运行一个计数查询,其中 id=X 的 col1 不为空,然后运行 ​​6 次并将结果相加。然而我觉得这肯定是非常低效的,而且我想不出更好的方法。

有人知道如何提高效率吗?

最佳答案

试试这个

SELECT 
COUNT(NULLIF(col1,'')),
COUNT(NULLIF(col2,'')),
COUNT(NULLIF(col3,'')),
COUNT(NULLIF(col4,'')),
COUNT(NULLIF(col5,'')),
COUNT(NULLIF(col6,''))
FROM yourTableName

我在本地phpMyAdmin中尝试过,效果很好。 :)

关于mysql - MySQL单行中非空列的计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48461909/

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