1.查询选修了课程的学生人数

select count(distinct sno)
from sc

2.查询选修了2号课程的学生的平均成绩

                 /*where 语句中不能出现 聚集函数*/
select avg(grade)/*sum 总成绩   max 最大成绩*/
from sc
where cno = '2'select avg(grade),getdate()/*显示当前时间*/
from sc
where cno = '2'

3.查询各个课程号及其相应的选课人数
select语句中只能出现 分组属性聚集函数

--对查询结果分组 group by
select cno,count(sno)
from sc
group by cno  /*cno为分组属性;select语句中只能出现 分组属性 和 聚集函数*/

4.查询各个系有多少个学生

select sdept,count(*)
from student
group by sdept

5.查询选修了3门以上的学生的学号

select sno,count(*)
from sc
group by sno having count(*)>=3 /*先按学生学号分组,然后进行筛选*/

多表连接查询

1.查询每个同学及其选修课程的情况

select student.*,sc.*     /*这样会导致出现两列Sno*/
from student,sc
where student.sno=sc.sno  /*连接条件*/

2.查询每个同学及其选修课程的情况

select student.*,sc.*   /*这样会导致出现两列Sno*/
from student,sc
where student.sno=sc.sno   /*连接条件*/

3.查找学生信息,所选课程的课程号以及分数

select student.*,cno,grade/*但是sno必须指定属于谁,因为它在两个表中都有*/
from student,sc
where student.sno=sc.sno  /*连接条件*/

4.求每一门课程的间接选修课

select first.cno 课程号,second.cpno 间接先修课  /*列别名*/
from Course first,course second/*给表加别名*/
where first.cpno = second.cno

5.查询每名同学的选课情况,包括没有选修课程的同学

select student.*,cno,grade
from student left outer join sc   /*左外链接*/
on student.sno = sc.Sno    /*on*/
--上下两种查询等价
select student.*,cno,grade
from student,sc
where student.sno=sc.sno

6.查询选修2号课程且成绩在90分以上的学生的学号和姓名

select sc.sno,sname
from student,sc
where student.sno = sc.sno and sc.cno = '2' and grade >60

7.查询每个学生的学号姓名以及选修课程的课程名及其成绩

select student.sno,sname,cname,grade
from student,sc,course
where student.sno = sc.sno and course.cno = sc.cno/*连接三个表*/
  • where 与having的区别
having在分组后使用,作用域是目标分组
where作用在整个表

单表查询之选择查询 + 多表查询(2020.3.20 )相关推荐

  1. mysql的4表联查讲解,MySQL的多表联查

    1.内部连接 \ 规则:返回两个表的通用记录 \ 语法: -语法一 select *从表1的内部联接表2上的表1.公用字段=表2.公用字段 -语法二 select *从表1的约束,表2其中表1.公共字 ...

  2. Excel的数据透视表怎么弄 ?数据透视表怎么做汇总求和

    使用Excel进行求和,除了运用函数之外,还可以插入数据透视表进行求和,数据透视表怎么做呢?小编使用WPS里的Excel给大家演示一遍. 步骤一:打开需要求和的表格,点击最上方的工具栏里的" ...

  3. server多笔记录拼接字符串 sql_第四章、SQL Server数据库查询大全(单表查询、多表连接查询、嵌套查询、关联子查询、拼sql字符串的查询、交叉查询)...

    4.1.查询的类型 declare @value as int set @value = 50 select  'age:'as age,2008 years,@valueas va --这种查询时跟 ...

  4. mybatis框架实现一对多、多对多关系查询,以及递归查询(单表多级分类:省市区三级地址查询)

    mybatis框架练习 mybatis框架中,包括实体类(这些实体类与数据库中的字段属性相对应),mybatis的配置文件(即mybatis-config.xml,这个配置文件用于连接实体类和orm( ...

  5. mysql 不在另一个表中_MySQL选择查询从表中选择不在另一个表中的行?

    对于我们的示例,我们将创建两个表并应用"自然左联接"以从第二个表中不存在的表中获取行. 创建第一个表.mysql> create table FirstTableDemo - ...

  6. mysql按照学生分组查询_将student表按照gender字段值进行分组查询,并计算每个分组中有多少名学生_学小易找答案...

    [简答题]查询student表中一共有多少条记录 [简答题]在department表和employee表之间分别使用where查询.自连接查询 [简答题]使用DESC查看学生表和班级表 [简答题]在表 ...

  7. 查询列名在哪张表_SQL—多表查询

    文章结构: 表的加法 表的联结 表的联结案例 case表达式 sqlzoo练习题 表的加法[union|并集]:表的加法是指将表的数据按行合并在一起(要求两张表的数据结构一致),是按行进行添加数据. ...

  8. mysql 多个select查询_MySQL的select多表查询

    select 语句: select 语句一般用法为: select 字段名 from tb_name where 条件 ; select 查询语句类型一般分为三种: 单表查询,多表查询,子查询 最简单 ...

  9. mysql 伪表查询语句_Oracle-05:伪表dual

    ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 此乃这张表里的全部字段信息,此表无法做修改操作 为什么有伪表这个概念?????????? 因为sql92的一个 ...

  10. HiveQL的DDL操作(二)——创建、分区、查询、修改、删除表

    DDL(data definition language)数据库定义语言: 关键词:create.select.alter.drop,对表的操作. 这篇博文主要详细整理了Hive中对于数据表的常用基本 ...

最新文章

  1. Material组件之MaterialApp、Scaffold、AppBar学习笔记
  2. 1235813找规律第100个数_拓展提优 | 小学数学拓展提优专项训练第9讲:
  3. 小型自动化运维--expect脚本之自动同步
  4. 最全面的C/C++编码规范总结
  5. python3 unicode字符串_【已解决】Python3中如何声明字符串是unicode类型以避免log日志打印出错...
  6. frp对http协议应用
  7. Android学习笔记(十一)——将Fragment添加到Activity中以及参数传递
  8. 中国地质大学网络计算机考试试题,2017年中国地质大学(武汉)计算机学院830计算机软件综合之计算机网络考研题库...
  9. 如何利用图像识别、语音识别、文本挖掘做好鉴黄?
  10. Spring框架常用注解
  11. easydarwin 安装_linux环境安装部署easydarwin流媒体服务器详细教程
  12. Youtube油管视频类别标签列表
  13. 推荐几个查找英语单词缩写的网站
  14. JavaWeb随手笔记
  15. 电脑配置低android模拟器,安卓模拟器低配置版哪个好 电脑内存再小也不怕
  16. 波浪下划线怎么设置_如何在word中的文字下面加波浪线
  17. ART虚拟机 | Cleaner机制源码分析
  18. User Interface Process(UIP) Application Block 2.0 研究总结
  19. 程序设计与算法MOOC021:鸣人与佐助(C++DFS、剪枝)
  20. PAT甲级-1021 Deepest Root(25分)

热门文章

  1. Rust: codewars的Bleatrix Trotter
  2. Julia:last() 和first()
  3. 开源跨平台的Fuchsia操作系统
  4. Every cloud has a silver lining
  5. 【CVRP】基于matlab遗传算法求解带容量的车辆路径规划问题【含Matlab源码 1280期】
  6. 【车牌识别】基于matlab GUI BP神经网络车牌识别【含Matlab源码 669期】
  7. 无需编码生成信息系统_无需编码即可逐步进行花分类
  8. 机器学习中特征选择_机器学习中的特征选择
  9. python双重for循环 列表推导式_Python轻量级循环-列表推导式
  10. c语言编程秒表multisim,用定时器计数器设计一个简单的秒表.docx