首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >计算一行中有多少个MySQL字段已填充(或为空)

计算一行中有多少个MySQL字段已填充(或为空)
EN

Stack Overflow用户
提问于 2011-07-17 06:42:00
回答 3查看 5.8K关注 0票数 7

我需要组合一个方法,使我能够量化一行中有多少个字段已被用户填充。

例如:

代码语言:javascript
运行
复制
User    Name    Age    Country    Gender    Height
1       Mike    34     USA        Male      6
2       Bill    23     CA                   5
3       Jane    31     USA        

在上面的示例中,我想查询数据库并返回一个反映用户记录完成程度的值。例如:

代码语言:javascript
运行
复制
User 1 = 100% complete
User 2 = 80% complete
User 3 = 60% complete

我想知道这是否需要通过SQL子句来完成,或者是否可以通过PHP SQL函数来查询数据库并计算完成度。

有什么建议要怎么做吗?我使用的是PHP5 (codeigniter)和SQL 5.0.77,但任何路线图都会非常感谢。

EN

Stack Overflow用户

回答已采纳

发布于 2011-07-17 06:52:16

代码语言:javascript
运行
复制
$result = mysql_query('SELECT * FROM `MyTable`');
while($row = mysql_fetch_row($result)){
    $empty_count = 0;
    $count = count($row);
    for($i = 0; $i < $count; $i++)
        if($row[$i] === '' || $row[$i] === 'NULL')
            $empty_count++;
    echo 'User '.$row[0].' = '.((int)(100*(1-$empty_count/($count-1)))).'% complete';
}
票数 9
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6720725

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档