> 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으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿