ホームページ > php教程 > php手册 > PHP和MySql数据库,如何获取每个分类的记录的总数

PHP和MySql数据库,如何获取每个分类的记录的总数

WBOY
リリース: 2016-06-06 19:53:45
オリジナル
2505 人が閲覧しました

示例的数据库,如下: 本文说的问题,就是统计每个学院(Sdept)的人数。 还有很多情况,比如说:在制作CMS的时候,文章有个分类问题,所有的文章的记录都是存放到同一个表中。 当我们需要统计每个分类的文章数量的时候,就是这个问题。 在我没有学习过数据

示例的数据库,如下:

PHP和MySql数据库,如何获取每个分类的记录的总数

本文说的问题,就是统计每个学院(Sdept)的人数。

还有很多情况,比如说:在制作CMS的时候,文章有个分类问题,所有的文章的记录都是存放到同一个表中。

当我们需要统计每个分类的文章数量的时候,就是这个问题。

在我没有学习过数据库相关的一些知识的时候,我是这样做的:

使用select * from table将所有的数据都取出来,然后对取出的每个数组的Sdept元素与已知的学院做比较,当条件符合的时候就进行计数。

$sql="select * from s_db";
$re=mysql_query($sql);
while($row=mysql_fetch_array($re))
{
     if($row[Sdept]=="CS")$CS_num++;
    //剩余的判断省略~
}
ログイン後にコピー

这样做话,不但要进行多次循环,还要进行多次判断,无疑是非常笨拙的~

在学习了数据库操作的sql语句相关知识后,发现可以这样做:

sql语句:

SELECT Sdept ,COUNT(Sno) FROM `s_db` GROUP BY Sdept
ログイン後にコピー

PHP和MySql数据库,如何获取每个分类的记录的总数

php语句:

$sql="SELECT Sdept ,COUNT(Sno) FROM `student` GROUP BY Sdept";
$re=mysql_query($sql);
while($row=mysql_fetch_row($re))
{
	echo $row[0]."".$row[1];
	echo "<br>";
}
ログイン後にコピー

PHP和MySql数据库,如何获取每个分类的记录的总数

这样做,优化的不是一点半点呀,所以多学习点东西还是对于学习和工作时非常有帮助的,学无止境呀~

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート