一.简单查找——查找学生

1. 查询姓”猴”的学生名单

Select * from student

Where 姓名 like “猴%”;

2. 查询姓名中最后一个字是”猴”的学生名单

Select *from students

Where 姓名 like “%猴”;

3. 查询姓名中带“猴”的学生名单

Select from students

Where 姓名 like “%猴%”;

一.简单查询——汇总分析

4. 查询课程编号为“0002”的总成绩

Select sum(成绩)

from score

Where 课程号=“0002”;

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

Select count (distinct 学号)

From score;

一.简单查询——分组

6. 查询各科成绩最高和最低的分

Select max(成绩) as 最高分,min(成绩) as 最低分

From score

Group by 课程号;

7. 查询每门课程被选修的学生数

Select 课程号,count(学号)

From score

Group by 课程号;

8. 查询男生,女生人数

Select 性别 , count(*)

From student

Group by 性别;

一.简单查询——分组结果的条件

9. 查询平均成绩大于60分学生的学号和平均成绩

Select 学号 avg(成绩)

From score

Group by 学号

Having avg(成绩)>60;

10. 查询至少选修两门课程的学生学号

Select 学号,count(课程号) as 选修课程数目

From score

Group by 学号

Having count(课程号)>=2;

11. 查询同名同姓学生名单并统计同名人数

Select 姓名, count(*)

From student

Group by 姓名

Having count(学号)>=2;

12. 查询不及格的课程并按课程号从大到小排列

Select 课程号

from score

Where 成绩<60

Order by 课程号 desc;

13. 查询每门课程的平均成绩,结果按平均成绩升序排列,平均成绩相同时,按课程号降序列

Select 课程号,avg(成绩) as 平均成绩

From score

Group by 课程号

Order by 平均成绩 asc, 课程号 desc;

14. 检索课程编号为“0004”且分数小于60的学生学号,结果按按分数降序排列

Select 学号 ,成绩from score

Where 课程编号=0004 and 成绩<60;

Order by 分数 desc;

15. 统计每门课程的学生选修人数(超过2人的课程才统计)要求输出课程号和选修人数,查询结果按人数降序排序,若人数相同,按课程号升序排列

Select 课程号,count(学号) as ‘选修人数’

From score

Group by 课程号

Having count(学号)>2

order by 选修人数,课程号;

16. 查询两门以上不及格课程的同学的学号及其平均成绩

Select 学号 avg(成绩) from score

Where 成绩<60

Group by 课程号

Having count(课程号)>2;

注意技巧:

Where 是查询条件,在分组之前

Having对分组结果指定条件

Order by 对排序结果排序一般在最后

二.复杂查询——子查询

17. 查询所有课程成绩小于60分学生的学号,姓名

Select 学号,姓名

from student

Where 学号 in (

Select 学号 From student

Where 成绩<60);

18. 查询没有学全所有课的学生的学号,姓名

Select 学号,姓名

From student

Where 学号 in (

Select 学号

From score

Group by 学号

Having count(课程号)

19. 查询出只选修了两门课程的全部学生的学号和姓名

Select 学号,姓名

From student

Where 学号 in(

Select 学号 from score

Group by 学号

Having count(课程号)=2);

20.1990年出生的学生名单

Select 学号,姓名 from student

Where year(出生日期)=1990;

21.查询各科成绩前两名的记录

Select * from score

Group by 课程号

Order by 成绩 desc

Limit 2;

三.多表查询——联结

22.查询所有学生的学号,姓名,选课数,总成绩

Select a.学号,a.姓名,count(b.课程号) as 选课数,sum(b.成绩) as 总成绩

From student as a left join score as b

On a.学号=b.学号

Group by a.学号

23.查询平均成绩大于85的所有学生的学号,姓名和平均成绩

Select a.学号,a.姓名,avg(b.成绩) as 平均成绩

From student as a left join score as b

On a.学号=b.学号

Group by a.学号

Having avg(b.成绩)>85;

24.查询学生的选课情况:学号,姓名,课程号,课程名称

Select a.学号,a.姓名,b.课程号,c.课程名称

From student a inner join score b on a.学号=b.学号

Inner join course c on b.课程号=c.课程号;

25.查询出每门课程的及格人数和不及格人数

Select 课程号,

Sum(case when 成绩>=60 then 1

Else 0

End) as 及格人数,

Sum(case when 成绩 <60 then 1

Else 0

End ) as 不及格数

From score

Group by 课程号;

26.使用分段[100-85],[85-70],[70-60],[<60]来统计各科的成绩,分别统计:各分数段人数,课程号和课程名称

Select a.课程号,b.课程名称

Sum(case when 成绩 between 85 and 100 then 1 else 0 end) as ‘[100-85]’,

Sum(case when 成绩 >=70 and 成绩 <85 then 1 else 0 end) as ‘[85-70]’,

Sum(case when 成绩>=60 and 成绩<70 then 1 else 0 end) as ‘[70-60]’,

Sum (case when 成绩<60 then 1 else 0 end ) as ‘[<60]’,

From score as a right join course as b

On a.课程号=b.课程号

Group by a.课程号,b.课程号;

27.查询课程编号为0003且课程成绩在80分以上的学生的学号和姓名

Select a.学号,a.姓名

From student as a inner join score as b on a.学号=b.学号

Where b.课程号=‘0003’ and b.成绩>80;

mysql检索面试题目_MySQL面试题目二十七道整理相关推荐

  1. 月黑雁飞高,计网全知道——精选二十七道计网面试题目

    计算机网络知识 前文已更新了Java面试知识,欢迎关注公众号[Java冢狐]来获取 1.HTTP ​ HTTP是一种:超文本传输协议 超文本:不关是文本,还可以是图片.音频.视频甚至点击. 传输:把超 ...

  2. mysql面试考点_mysql面试知识点

    1 引擎-MyISAM和InnoDB的区别 a 是否支持行级锁 : MyISAM 只有表级锁(table-level locking), 而InnoDB 支持行级锁(row-level locking ...

  3. mysql 配置执行计划_MySQL深入学习(二)--配置、索引、执行计划

    MySQL 一.MySQL 5.7 初始化配置 1.初始化数据并配置 # 1.初始化数据 /usr/local/mysql/bin/mysqld --initialize-insecure --use ...

  4. mysql 极限优化配置_MySQL优化(二) 优化诀窍

    一.索引的使用 (1)查询要使用索引最重要的条件是查询条件中的字段建立了索引: (2)下列几种情况可能使用到索引: <1> 对于创建的多列索引,只要查询条件使用了最坐边的列,索引一般就会被 ...

  5. mysql 创建复制账号_MySQL 复制(二:配置) | 剑花烟雨江南

    为MySQL服务器配置复制非常简单.但由于场景不同,基本的步骤还是有所差异.最基本的场景是新安装的主库和备库,总的来说分为以下几步: 在每台服务器上创建复制账号 配置主库和备库. 通知备库连接到主库并 ...

  6. mysql外卖怎么写_MySQL曹操外卖二

    SELECT * FROM goods; //查询所有外卖商品编号.名称.定价.折扣.分类编号.商家编号.评分.描述.包装费. SELECT * FROM goods WHERE cateid=(SE ...

  7. mysql入门到精通_Mysql从入门到精通全文整理

    mysql基础 数据库基本概念 磁盘文件--> 层次模型 --> 网状模型 --> (Codd) 关系模型 DBMS是管理数据库的系统软件,它实现数据库系统的各种功 能.是数据库系统 ...

  8. mysql month函数值类型_MySQL常用函数(分类别整理)

    MySQL常用函数(分类别整理) 2021-01-30 一.数学函数ABS(x) 返回x的绝对值BIN(x) 返回x的二进制(OCT返回八进制,HEX返回十六进制)CEILING(x) 返回大于x的最 ...

  9. MySQL数据库sql分类_mysql数据库常用sql的分类整理

    **************************************************************************************************** ...

最新文章

  1. 修改mysql   默认字符集 , 默认引擎
  2. 实验四 使用C++的mfc实现圆心为任意位置的圆的绘制。
  3. 作业帮、猿辅导、学而思们,正在经历自己的高考
  4. wxWidgets:多文档界面实例
  5. hdu 2188悼念512汶川大地震遇难同胞——选拔志愿者(博弈)
  6. Vue生命周期与自定义组件
  7. oracle新增表单,Oracle Retail(Retek)中Form生成列表方法总结
  8. 配置win2003 server IIS的总结,为什么IIs的工作进程会在空闲时间释放的问题。同时学会了throw的真正含义,throw的真正含义就是导致程序停止,崩溃,很简单,网摘也有记录。...
  9. 【转】处事22计、心态24条、伤心50句、礼仪73、学会长大20!
  10. php提取ip源码,PHP(源码) 如何获取客户端的IP地址
  11. jQuery 中的 attr
  12. Java 实现 HTML 转 PDF 文件
  13. 图片alt属性添加方法
  14. 模拟人生畅玩版无线连接服务器超时,模拟人生™:畅玩版总是显示无法连接网络...
  15. 微信小程序实现多图片下载
  16. Windows下获得当前目录下的所有文件的文件名并输出到文件
  17. docker compose容器域名配置
  18. leetcode每日一题1725. 可以形成最大正方形的矩形数目 哈希表存储 到 贪心遍历 优化~
  19. Web前端开发培训之41个JavaScript实用技巧
  20. 22家安卓应用商店名单

热门文章

  1. netty ByteBuf对象池和内存泄漏检测实现走读
  2. 用java做一个管理系统难吗_想知道怎样用Java做出一个学生管理系统,课一直听得一知半解。现在考试啥都不会?...
  3. wpf listview 切换数据源 位置不刷新_连载| 8 初识数据源
  4. Android之设置横屏竖屏
  5. Bootstrap栅格系统研究
  6. java 某点 旋转_java-如何围绕某个点旋转顶点?
  7. linux mysql导出导入表_linux mysql 数据库操作导入导出 数据表导出导入
  8. redis常用命令(高级篇)
  9. kvm、qemu-kvm、ibvirt及openstack,之间的关系
  10. Redis:哨兵模式(针对某一模块,数据量有限)