为什么 COUNT 函数在 php 中给出错误的输入而在 phpmyadmin sql 中给出正确的结果
why COUNT function gives wrong input inside php and right result inside phpmyadmin sql
当在 Phpmyadmin 中执行查询时,我正在尝试计算 table 中不为 NULL 的行,它给了我正确的输出。
SELECT COUNT(`column_name`) FROM `Table_name`
但是当我试图在 Php 中执行它时,它总是 returns 一个我尝试了 2 种方法,由于某些原因都返回了一种有什么想法吗?
方法一
$query = "SELECT COUNT(`column_name`) FROM `Table_name`";
if ($result = $mysqli->query($query)) {
$field1name = $rowcount=mysqli_num_rows($result);
echo '<tr>
<td>English</td>
<td>'.$field1name.'</td>
</tr>';
$result->free();
}
方法二
$query = "SELECT COUNT(`column_name`) FROM `Table_name`";
if ($result = $mysqli->query($query)) {
while ($rowcount = $result->fetch_assoc()) {
$field1name = $rowcount=mysqli_num_rows($result);
echo '<tr>
<td>Bahdini</td>
<td>'.$field1name.'</td>
</tr>';
}
$result->free();
}
SELECT COUNT 查询 returns 1 行的结果集,在该行中你得到行数:如你所述的 10228。
函数 mysqli_num_rows returns RESULTSET 中的行数,这就是它 returns 1.
的原因
您连续进行了多项作业..这是您的预期结果??
$field1name = $rowcount =mysqli_num_rows($result);
Instaed 您应该为计数使用适当的列别名,然后查询、提取、循环结果并显示
$query = "SELECT COUNT(`column_name`) my_count FROM `Table_name`";
$result = mysqli_query($conn, $query );
if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) {
echo "Name: " . $row["my_count"]. "<br>";
}
} else {
echo "0 results";
}
当在 Phpmyadmin 中执行查询时,我正在尝试计算 table 中不为 NULL 的行,它给了我正确的输出。
SELECT COUNT(`column_name`) FROM `Table_name`
但是当我试图在 Php 中执行它时,它总是 returns 一个我尝试了 2 种方法,由于某些原因都返回了一种有什么想法吗?
方法一
$query = "SELECT COUNT(`column_name`) FROM `Table_name`";
if ($result = $mysqli->query($query)) {
$field1name = $rowcount=mysqli_num_rows($result);
echo '<tr>
<td>English</td>
<td>'.$field1name.'</td>
</tr>';
$result->free();
}
方法二
$query = "SELECT COUNT(`column_name`) FROM `Table_name`";
if ($result = $mysqli->query($query)) {
while ($rowcount = $result->fetch_assoc()) {
$field1name = $rowcount=mysqli_num_rows($result);
echo '<tr>
<td>Bahdini</td>
<td>'.$field1name.'</td>
</tr>';
}
$result->free();
}
SELECT COUNT 查询 returns 1 行的结果集,在该行中你得到行数:如你所述的 10228。
函数 mysqli_num_rows returns RESULTSET 中的行数,这就是它 returns 1.
的原因您连续进行了多项作业..这是您的预期结果??
$field1name = $rowcount =mysqli_num_rows($result);
Instaed 您应该为计数使用适当的列别名,然后查询、提取、循环结果并显示
$query = "SELECT COUNT(`column_name`) my_count FROM `Table_name`";
$result = mysqli_query($conn, $query );
if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) {
echo "Name: " . $row["my_count"]. "<br>";
}
} else {
echo "0 results";
}