如何从查询COUNT中获取结果。
这就是我在数据库中查询的方式
fname lname mname positionName COUNT(tbl_votes.studId)
jr gwapo is-very chairman 2
这就是我的网页外观
Name Position Number of Votes
jr is-very gwapo chairman ______
并且是我的代码。
<?php
if ($result = $mysqli->query("SELECT tbl_student.fname, tbl_student.lname, tbl_student.mname, tbl_position.positionName, Count(tbl_votes.studId) FROM tbl_candidate Inner Join tbl_student ON tbl_candidate.studId = tbl_student.studId Inner Join tbl_position ON tbl_candidate.positionId = tbl_position.positionId Inner Join tbl_votes ON tbl_student.studId = tbl_votes.candId WHERE tbl_position.positionId = '1' GROUP BY tbl_student.fname, tbl_student.lname, tbl_student.mname, tbl_position.positionName")) {
if ($result->num_rows > 0) {
echo "<table border='1' cellpadding='10'>";
// set table headers
echo "<tr><th>Name</th><th>Position</th><th>Number of Votes</th></tr>";
while ($row = $result->fetch_object()) {
echo "<tr>";
echo "<td>" . $row->fname . " " . $row->mname . " " . $row->lname . " </td>";
echo "<td>" . $row->positionName . "</td>";
//this is where i suppose to echo the count result
echo "<td>" . $row-> ??? . "</td>";
echo"<tr>";
}
echo "</table>";
} else {
echo "No results to display!";
}
}
$mysqli->close();
?>
继承我的问题,我怎么能通过“Count(tbl_votes.studId)” “echo”“。$ row-&gt; ???。”“;”?请帮忙......
答案 0 :(得分:1)
在sql查询中,将Count(tbl_votes.studId)
更改为Count(tbl_votes.studId) as stu_count
。
在php中,您可以使用$row->stu_count
答案 1 :(得分:0)
您需要使用SQL alias。
Count(tbl_votes.studId) as cnt
//or
Count(tbl_votes.studId) 'cnt'
然后您可以使用$row->cnt
有关别名的一些规则:
ORDER BY cnt
)。 注意:据我所知,你不能使用你在另一个select语句中的select中创建的别名。例如,SELECT COUNT(something) AS cnt, cnt+3 FROM
...将无效答案 2 :(得分:0)
尝试 选择field1,field2,Count(tbl_votes.studId)作为来自...的cnt。
答案 3 :(得分:0)
而不是写
count(some_field)
写
count(some_field) as count_some_field
您为该计数字段指定别名。您可以将其作为$ row-&gt; count_some_field。
进行访问答案 4 :(得分:0)
你应该使用&#39; 作为&#39;用&#39; 计数&#39; 。所以你的查询会变成这样的
"SELECT tbl_student.fname, tbl_student.lname, tbl_student.mname, tbl_position.positionName, Count(tbl_votes.studId) as no_of_votes FROM tbl_candidate Inner Join tbl_student ON tbl_candidate.studId = tbl_student.studId Inner Join tbl_position ON tbl_candidate.positionId = tbl_position.positionId Inner Join tbl_votes ON tbl_student.studId = tbl_votes.candId WHERE tbl_position.positionId = '1' GROUP BY tbl_student.fname, tbl_student.lname, tbl_student.mname, tbl_position.positionName"
那么你可以通过php获取它
$row->no_of_vote
有关mor信息,请参阅COUNT AS