首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >只显示特定值的计数

问只显示特定值的计数
EN

Stack Overflow用户
提问于 2022-01-06 17:02:29
回答 1查看 35关注 0票数 0

我不明白我这是怎么回事。我希望计数器只显示何时付款状态(在数据库中的列是payment_status)显示免费或完成,如果列名称,宋,和乐队有一些填充(不是空白)。下面是我的代码,但是即使payment_status为null,它也在计算条目。任何帮助都是非常感谢的。

我所做的事情:除了搜索我能找到的任何地方,我试图取出,重新排列,并改变不同的值在每一行为空和NULLIF部分。

这是我的密码

代码语言:javascript
复制
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
  die("Connection failed: " . $conn->connect_error);
}

$sql = "SELECT id, name, band, song, extra, band2, song2, extra2, band3, 
                song3, extra3, item_name, payment_status 
        FROM nametable";
$result = $conn->query($sql);


$resultt = mysqli_query($conn, "select COUNT(  NULLIF( song, '' ) ) +
                                       COUNT(  NULLIF( song2, '' ) ) + 
                                       COUNT(  NULLIF( song3, '' ) ) AS count 
                                FROM `nametable` ");

if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
        if( $row['payment_status'] == "Completed" || 
            $row['payment_status'] == "Free")
        {
        
            if( !empty($row["name"]) && 
                !empty($row["band"]) && 
                !empty($row["song"])  )
            {

                if(!$result) {
                    die('Error: ' . mysqli_error($link));
                } else {
                    $num_rows = mysqli_fetch_assoc($resultt);
                    // echo it
                    echo "<font color='aqua'>" . $num_rows['count']."</font>";
                }
            }
        }
    }
} else {
    echo " ";
}
$conn->close();
?> 
EN

回答 1

Stack Overflow用户

发布于 2022-01-06 17:22:16

您可以直接从db中获得结果。

代码语言:javascript
复制
select COUNT(  NULLIF( song, '' ) ) +
       COUNT(  NULLIF( song2, '' ) ) + 
       COUNT(  NULLIF( song3, '' ) ) AS count 
       FROM `nametable`
       WHERE payment_status IN ('FREE ', 'COMPLETED')
       AND concat(ifnull(Name,''), ifnull(Song,''), ifnull(Band ,'')) != ''
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70610791

复制
相关文章

相似问题

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