当前位置:   article > 正文

SQL Sever 单表数据查询(下)_数据库 compute count

数据库 compute count

提示:本篇文章是在上篇文章的基础上进行单表数据查询操作的补充,主要以例题的方式呈现.


前言

1.分组:统计各门课程的选修人数

select cno 课程号,COUNT(cno) 选课人数 from sc group by cno
  • 1

在这里插入图片描述

2.分别统计男女生的平均年龄

select ssex 性别,AVG(sage) 平均年龄 from student group by ssex
  • 1

在这里插入图片描述

3.查询所有科目成绩在85分以上的学生的学号及其平均分

select sno,AVG(grade) 平均分 from sc group by sno having MIN(grade)>=85
  • 1

在这里插入图片描述

4.查询平均年龄大于18岁的系部和平均年龄

select sdept 院系,AVG(sage) 平均年龄 from student group by sdept having AVG(sage)>18
  • 1

在这里插入图片描述

5.DRDER BY子句:查询选修课程2101的所有学生信息,并按成绩降序排列

select * from sc WHERE cno='2101' ORDER BY grade DESC
  • 1

在这里插入图片描述

6. INTO 子句:查询sc表中课程号为2101的记录,并将结果保存进表scl

select * INTO scl from sc WHERE cno='2101'
  • 1

在这里插入图片描述

7.查询学生的详细信息,并返回学生的总人数和平均年龄

select * from student 
order by sage
COMPUTE COUNT(sno),AVG(sage)

  • 1
  • 2
  • 3
  • 4

在这里插入图片描述

8.查询学生的详细信息,同时返回每个年龄段的学生的总人数和平均年龄

select * from student
order by sage
COMPUTE COUNT(sno) ,AVG(sage)BY sage
  • 1
  • 2
  • 3

在这里插入图片描述
在这里插入图片描述

9.知识点总结

(1)分组查询——group by
select
聚合函数,
列(要求出现在group by的后面)
from

where
筛选条件
group by
分组的列表
order by
子句

注意:除了出现在group by后面的字段,如果要在select后查询其他字段,必须用聚合函数进行聚合.

特点:
分组查询中的筛选条件分为两类
分组筛选: 数据源是原始表,用where,放在group by前面,因为在分组前筛选
分组筛选:数据源是分组后的结果集 ,用having,放在group by后面,因为在分组后进行筛选。
✨用group by 的select字句中,只能选择集合函数和出现在group by字句中的分组列。
✨但对组用 having 进行筛选时,having字句使用的集合函数表达式包含的列可以不包含在select字句的选择列中。
在这里插入图片描述

select bookID,sum(quentity) as 销售册数
from book 
group by bookid

  • 1
  • 2
  • 3
  • 4

在这里插入图片描述
(2).排序——order by
select

from

where

order by
字段名
当我们查询出结果后,根据结果集中的某个字段进行排序,order by 字段名 排序方式(升序/降序)
order by默认采用升序(asc,如果存在 where 子句,那么 order by 必须放到 where 询句后面。
(3)INTO子句 功能是将查询结果保存到新的基表中
根据选择列表中的列和 WHERE 子句选择的行,指定要创建的新表名。 new_table 的格式通过对选择列表中的表达式进行取值来确定。 new_table 中的列按选择列表指定的顺序创建。 new_table 中的每列与选择列表中的相应表达式具有相同的名称、数据类型和值
(4)COMPUTE子句
compute 比 group by 更高级,group by 可以查看某一类的函数计算;而compute不光能实现这个效果,还可以显示出每一类的每一条数据。

select *
from book
compute sum(quentity)
  • 1
  • 2
  • 3

在这里插入图片描述


总结

今天的内容分享就到这里啦,如果对友友们有帮助的话记得点赞收藏博客,关注后续的SQL Sever学习内容哦~

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/寸_铁/article/detail/753715
推荐阅读
相关标签