本篇将介绍五个聚集函数的使用,分别是Count、Sum、Min、Max、Avg,这些函数的使用和我们在SQL命令中的使用场景是一样的,都是用于统计数据,求个数,求和,求最小值,求最大值,求平均数。
1、Count函数
Count函数的作用是获得集合中元素的个数,返回值类型是int类型,转换成SQL语句如下
1
|
SELECT
COUNT
(*)
FROM
TABLENAME
|
Count函数的使用方式也包括两种,分别是无参形式和有参形式。
(1)无参形式
使用无参形式我们可以获得集合中所有对象的数量,例如:
1
|
int
count = db.Students.Count();
|
上面语句将获得所有学生的总数。
(2)有参形式
有参形式相当于根据参数条件做了一个额外的筛选,然后返回筛选之后的结果集合的对象数量。例如:
1
|
int
count = db.Students.Count(stu=>stu.Age>20);
|
上面语句将获得所有年龄大于20的学生的总数。
补充:
除了使用Count函数可以获得集合中的元素个数外,我们还可以使用LongCount函数,它与Count的不同在于,它的返回值类型是long类型,用于集合中元素个数相对较多的情况下。
2、Sum函数
Sum函数的作用是获得集合中数值类型的元素的总和,对应的SQL语句如下
1
|
SELECT
SUM
(COLNAME,...)
FROM
TABLENAME
|
Sum函数的使用方式也包括两种,分别是无参形式和有参形式。
(1)无参形式
使用无参形式必须先确定出要进行求和计算的列,然后调用Sum函数。例如:
1
|
var sum = db.Students.Select(stu=>stu.Age).Sum();
|
上面语句将获取所有学生的年龄总和(本例在实际应用中没有实际意义)。
(2)有参形式
使用有参形式就可以在参数中确定要进行求和的列。例如:
1
|
var sum = db.Students.Sum(stu=>stu.Age);
|
上面语句上面语句同样能获取所有学生的年龄总和
3、Min函数
Min函数的作用就是获得集合中元素的最小值,类似于SQL语句:
1
|
SELECT
MIN
(COLNAME...)
FROM
TABLENAME
|
Min函数的使用方式也包括两种,分别是无参形式和有参形式。
(1)无参形式
使用无参形式必须先确定出要进行求最小值的列,然后调用Min函数。例如:
1
|
var min = db.Students.Select(stu=>stu.Age).Min();
|
上面语句将获取所有学生中最小的年龄。
(2)有参形式
使用有参形式就可以在参数中确定要进行求最小值的列。例如:
1
|
var min = db.Students.Min(stu=>stu.Age);
|
上面语句上面语句同样能获取所有学生中最小的年龄。
4、Max函数
Max函数的作用就是获得集合中元素的最大值,类似于SQL语句:
1
|
SELECT
MAX
(COLNAME...)
FROM
TABLENAME
|
Max函数的使用方式也包括两种,分别是无参形式和有参形式。
(1)无参形式
使用无参形式必须先确定出要进行求最大值的列,然后调用Max函数。例如:
1
|
var max = db.Students.Select(stu=>stu.Age).Max();
|
上面语句将获取所有学生中最大的年龄。
(2)有参形式
使用有参形式就可以在参数中确定要进行求最大值的列。例如:
1
|
var max = db.Students.Max(stu=>stu.Age);
|
上面语句上面语句同样能获取所有学生中最大的年龄。
5、Avg函数
Avg函数的作用就是获得集合中元素的平均值,返回值类型是double,类似于SQL语句:
1
|
SELECT
AVG
(COLNAME...)
FROM
TABLENAME
|
Avg函数的使用方式也包括两种,分别是无参形式和有参形式。
(1)无参形式
使用无参形式必须先确定出要进行求平均值的列,然后调用Avg函数。例如:
1
|
var avg = db.Students.Select(stu=>stu.Age).Avg();
|
上面语句将获取所有学生的平均年龄。
(2)有参形式
使用有参形式就可以在参数中确定要进行求平均值的列。例如:
1
|
var avg = db.Students.Avg(stu=>stu.Age);
|
上面语句上面语句同样能获取所有学生的平均年龄。
总结,本篇主要介绍了5个聚集函数的使用,发现他们的使用形式基本一致,并且与SQL命令非常类似,且使用方便。