统计数据,满足某些条件数、所有最大积分、用户的平均成绩等,统计操作的内置方法
方法 | 说明 |
---|---|
count | 统计数量,参数是要统计的字段名(可选) |
max | 获取最大值,参数是要统计的字段名(必须) |
min | 获取最小值,参数是要统计的字段名(必须) |
avg | 获取平均值,参数是要统计的字段名(必须) |
sum | 获取总分,参数是要统计的字段名(必须) |
聚合方法如果没有数据,默认0,聚合查询配合其它查询条件
用法示例
获取用户数
Db::table('think_user')->count();
SQL语句
SELECT COUNT(*) AS tp_count FROM `think_user` LIMIT 1
字段统计
Db::table('think_user')->count('id');
SQL语句
SELECT COUNT(id) AS tp_count FROM `think_user` LIMIT 1
用户的最大积分
Db::table('think_user')->max('score');
SQL语句
SELECT MAX(score) AS tp_max FROM `think_user` LIMIT 1
获取的最大值不是一个数值,使用第二个参数关闭强制转换
Db::table('think_user')->max('name',false);
积分大于0的用户的最小积分
Db::table('think_user')->where('score', '>', 0)->min('score');
min支持第二个参数
Db::table('think_user')->where('score', '>', 0)->min('name',false);
获取用户的平均积分
Db::table('think_user')->avg('score');
SQL语句
SELECT AVG(score) AS tp_avg FROM `think_user` LIMIT 1
统计用户的总成绩
Db::table('think_user')->where('id',10)->sum('score');
SQL语句
SELECT SUM(score) AS tp_sum FROM `think_user` LIMIT 1
尊贵的董事大人
英文标题不为空时 视为本栏投稿
需要关键字 描述 英文标题