如何使用SQL查找表中的行数?

时间:2013-06-13 06:20:20

标签: php mysql

我需要知道在我的网站上构建我的页面前进/后退系统的表的总行数,其中列出了联邦账单。这是我的SQL查询。

$query="SELECT COUNT (*) FROM bills";
$result = mysqli_query(dbcxn('bill'),$query);
$billcount = mysqli_fetch_assoc($result);
echo $billcount;

dbcxn()是我写的一个函数,我在所有SQL查询中都使用过它,所以我很确定它不是错误的来源。

页面上显示的错误如下:

Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in /opt/lampp/htdocs/unipartisan/includes/billvote.inc on line 76

我引用了一本关于SQL的书来决定使用SELECT COUNT,但它似乎与我预期的工作方式不同。

3 个答案:

答案 0 :(得分:4)

更改为,

$query = "SELECT COUNT(*) FROM bills"; // No space between COUNT & (*)

如果有的话,一定要练习打印错误。

if (!mysqli_query(dbcxn('bill'),$query)) {
    printf("Errormessage: %s\n", mysqli_error(dbcxn('bill')));
}

根据@ Dave的评论,可以找到有关错误的更多详细信息 here

答案 1 :(得分:1)

我认为您可以尝试为您的计数添加别名,并在COUNT

之后删除空格
$query="SELECT COUNT(*) as total FROM bills";

现在您可以使用范围打印

echo $billcount['total'];

答案 2 :(得分:0)

<?php
    $query = "SELECT * FROM YOURTABLE";
    $result = mysql_query($query,$yoursqlconnection) or die('query error');
    $row = mysql_num_rows($result);
    echo $row;
?>

跳这个帮助