gpt4 book ai didi

php - 如何计算数据库中的列,如果为空则返回 0 PHP

转载 作者:行者123 更新时间:2023-11-29 09:57:41 25 4
gpt4 key购买 nike

我有一个表格,我想在其中计算一列中的总条目数。但如果整个列都是空的,我希望计数返回 0(意味着有零个条目)

这是我尝试过的,但是当我使用 echo 时它返回空白。在数据库中它是空白的,但我希望当列召回为空时它返回0。

代码:

$chartsql = "SELECT recall from report where child_id='$childId'"; 
$ChartRes = mysqli_query($con,$chartsql);

while ($ChartRow=mysqli_fetch_array($ChartRes)){
$recall[] = $ChartRow['recall1'];
}

foreach($recall as $index=>$value) {
if($value === null) unset($recall[$index]);
}
$count_recall = count($recall);

if($count_recall = ''){
$count_recall1 = 0;

}

echo $count_recall;

此外,在召回列中,还有空条目和空白条目。所以我想忽略空值,但如果所有其他条目都是空白,那么它应该返回零。如果有一些空白和一些有效条目,那么它应该只计算有效条目,而不计算空白。

如果它完全为空,则应仅返回 0,忽略空值。

最佳答案

改用 SQL 计数函数:

$chartsql = "SELECT count(child_id) as totalitems from report where child_id='$childId' and recall is not null and recall != ''";
$ChartRes = mysqli_query($con,$chartsql);
$ChartRow = mysqli_fetch_array($ChartRes);
$count_recall = $ChartRow['totalitems'];

当您可以使用 SQL 计算结果时,切勿使用 PHP 进行计数,因为:

  • 当您有很多行时,就会出现性能问题。
  • 您可以在查询中轻松完成此操作,并且代码更简洁。
  • 调试更加容易。

关于php - 如何计算数据库中的列,如果为空则返回 0 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53564960/

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