M('table')-count();
成都创新互联公司-专业网站定制、快速模板网站建设、高性价比马尾网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式马尾网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖马尾地区。费用合理售后完善,十余年实体公司更值得信赖。
见手册统计查询:
方法说明
Count 统计数量,参数是要统计的字段名(可选)
Max 获取最大值,参数是要统计的字段名(必须)
Min 获取最小值,参数是要统计的字段名(必须)
Avg 获取平均值,参数是要统计的字段名(必须)
Sum 获取总分,参数是要统计的字段名(必须)
第一、phpmyadmin 的查询结果显示了分页数据、总条数信息及索引信息,看似只执行了一次查询,实际上是做了多次查询的,只是页面中没显示出来,但是查看 mysql 的运行日志就会发现,其实已经执行了很多条 sql 语句,因为 phpmyadmin 的操作基本都是批量执行增删改查的;
第二、有一种方式可以实现只查询一次就能达到分页的效果,但实际上这种方式是不推荐的,性能比查询两次(一次查总数,一次查分页数据)低了很多,尤其在数据量越大的时候差异越明显;
一次查询的思路是:一次性把满足条件的数据全都查出来,然后再从结果中去取实际分页中要显示的那部分数据;例如,根据标题搜索数据,每页显示20条,一次性总共查出来 1000 条数据,显示第一页的时候就只获取前面的20条,第二页就取第21-40条,第三页就只取41-60条,后面的依次类推。
可想而知,这种查询是很浪费的,我明明只要那一部分数据,却查出了所有的,剩下那部分就根本没用。尤其在数据量大的时候,上万条百万条等等,性能就更差了,如果再加上高并发,那基本就要崩溃了。
所以做分页一般都是查两次比查一次好得多
用mysql的avg函数可以求平均值
select sum(rank_point) from comment group by comment_id;
select avg(rank_point) from comment group by comment_id;
如果非要用php只有用foreach一条一条的求和然后求平均值
$sum =0;
$num =0;
foreach($cmt as $v)
{
$sum +=$v['poiint'];
++$num;
}
if($num=1)
{
$avg = $sum/$num;
}
php使用mysql查询数据库已经有多少条数据使用sql的count函数实现。
示例代码如下:
?php
//数据库连接
$conn=mysql_connect("localhost","root","root");
if(!$conn){
die("对不起,数据库连接失败! ").mysql_errno();
}
//选择数据库
mysql_select_db("testdb");
//sql语句
$sql="SELECT COUNT(*) AS count FROM user";
//执行sql
$query=mysql_query($sql,$conn);
//对结果进行判断
if(mysql_num_rows( $query)){
$rs=mysql_fetch_array($query);
//统计结果
$count=$rs[0];
}else{
$count=0;
}
echo $count;
?
返回的$count就是当前数据库的记录条数。