如何计算mysql中的行数?

时间:2018-04-30 13:41:38

标签: php mysql sql mysqli

<?php
        $query="select usertable.id, name, username, dateofbirth, user_id from usertable INNER JOIN passbook on passbook.user_id=usertable.id ";
        $result= mysqli_query($sql, $query);
        $rowcount=mysqli_num_rows($result);
        printf("Result set has %d rows.\n",$rowcount);
        while($row=mysqli_fetch_array($result))
        {
            echo "<tr>";
            echo "<td>";
            echo $row["id"];
            echo "</td>";
            echo "<td>";
            echo $row["name"];
            echo "</td>";
            echo "<td>";
            echo $row["dateofbirth"];
            echo "</td>";               
            echo "<td>";
            echo $row["user_id"];
            echo "</td>";

            echo "</tr>";
        }

    ?>

我正在尝试显示表格中特定用户的书籍数量。我使用了mysqli_num_rows查询,但它返回了视图中的总行数。我想将每个用户的书籍数量显示为表格数据。请帮忙。

2 个答案:

答案 0 :(得分:2)

您在SQL语句中使用GROUP BY聚合(这不是要解决的PHP问题,它是一个数据库解决方案):

select count(*) as bookstaken, usertable.id, name, username, dateofbirth, user_id from usertable INNER JOIN passbook on passbook.user_id=usertable.id GROUP BY usertable.id, name, username, dateofbirth, user_id`

答案 1 :(得分:0)

在count上选择count(*)作为count,usertable.id,name,username,dateofbirth,user_id来自usertable INNER JOIN的存折.user_id = usertable.id