在数据库中如何统计各专业学生人数,并要求既显示所有学生的信息,又要求按照专业分组?

在数据库中如何统计各专业学生人数,并要求既显示所有学生的信息,又要求按照专业分组?,第1张

mysql>select 专业,count(*) as 人数 from xs group by 专业 with rollup

+----------+------+

| 专业 | 人数 |

+----------+------+

| 中文 |1 |

| 化学 |1 |

| 土木工程 |1 |

| 机械 |1 |

| 英文 |1 |

| 计算机 |1 |

| NULL |6 |

+----------+------+

7 rows in set

1.用SELECT语句对数据进行统计

2.集合函数(聚合函数,统计函数)

3.为了有效处理查询得到的数据集合,SQL Server提供了一系列统计函数.

4.这些函数可以实现数据集合和汇总:

avg ([ALL|DISTINCT]列名) 求指定数字字段的平均值

sum ([ALL|DISTINCT]列名) 求指定数字字段的总和

max([ALL|DISTINCT]列名) 求指定数字字段中最大值

min ([ALL|DISTINCT]列名) 求指定数字字段中最小值

count([ALL|DISTINCT]列名) 求满足条件记录中指定字段不为空的记录个数

count(*) 求满足条件记录总数

5.用GROUP BY子句对记录分类统计汇总

格式:

GROUP BY 分组字段名列表[HAVING 条件表达式]

功能:按指定条件对指定字段依次分组进行统计汇总

注:

使用GROUP BY 的语句仍可用ORDER BY子句排序

但必须在GROUP BY之后可以使用别名但不允许对SELECT没指定的列排序

HAVING子句是对分组统计后的查询结果进行筛选.

使用GROUP BY 的select语句仍可用WHERE子句指定条件.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6654440.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存