牛骨文教育服务平台(让学习变的简单)

聚合查询

在应用中我们经常会用到一些统计数据,例如当前所有(或者满足某些条件)的用户数、所有用户的最大积分、用户的平均成绩等等,ThinkPHP为这些统计操作提供了一系列的内置方法,包括:

方法 说明
count 统计数量,参数是要统计的字段名(可选)
max 获取最大值,参数是要统计的字段名(必须)
min 获取最小值,参数是要统计的字段名(必须)
avg 获取平均值,参数是要统计的字段名(必须)
sum 获取总分,参数是要统计的字段名(必须)

用法示例:

获取用户数:

Db::table("think_user")->count();
// 助手函数
db("user")->count();

或者根据字段统计:

Db::table("think_user")->count("id");
// 助手函数
db("user")->count("id");

获取用户的最大积分:

Db::table("think_user")->max("score");
// 助手函数
db("user")->max("score");

获取积分大于0的用户的最小积分:

Db::table("think_user")->where("score>0")->min("score");
// 助手函数
db("user")->where("score>0")->min("score");

获取用户的平均积分:

Db::table("think_user")->avg("score");
// 助手函数
db("user")->avg("score");

统计用户的总成绩:

Db::table("think_user")->sum("score");
// 助手函数
db("user")->sum("score");