测试一般各种查询语句用的较多,下面的查询语句都是需要熟悉的

Course表

Score表

Student表

Teacher表

1,查询课程编号为“02”的总成绩

SELECT * FROM `Score` where c_id=02;

2,查询课程编号为“01”的课程比“02”的课程成绩高的所有学生的学号

SELECT st.*,a.s_core,b.s_core
FROM Student st
INNER JOIN (SELECT s_id,s_core from Score where c_id='01') a ON st.s_id=a.s_id
INNER JOIN (SELECT s_id,s_core FROM Score WHERE c_id='02') b ON a.s_id=b.s_id
WHERE a.s_core>b.s_core;

3,查询没学过“张三”老师课的学生的学号、姓名

SELECT st.s_id,st.s_name
from Student st
WHERE st.s_id not in
(SELECT sc.s_id from Score sc INNER JOIN Course co on sc.c_id=co.c_id
INNER JOIN Teacher te on te.t_id=co.t_id
WHERE te.t_name='张三');

4,查询没有学全所有课的学生的学号、姓名

SELECT st.s_id,st.s_name FROM Student st
INNER JOIN Score sc on st.s_id=sc.s_id
GROUP BY st.s_id HAVING COUNT(c_id)<(SELECT COUNT(DISTINCT c_id)from Course);

5,查询平均成绩大于60分的学生的学号和平均成绩

SELECT s_id as "学号",avg(s_core) as "平均成绩" from Score GROUP BY s_id HAVING avg(s_core)>60

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

SELECT Student.s_id,Student.s_name,count(Score.c_id),sum(Score.s_core)
FROM Student
JOIN Score
on Student.s_id=Score.s_id
GROUP BY Student.s_id;

7,查询姓“猴”的老师的个数

SELECT count(t_id)
FROM `Teacher`
where t_name like"猴%";

8,查询学过“张三”老师所教的所有课的同学的学号、姓名

SELECT st.s_id as '学号',st.s_name as '名称'
from Student st
WHERE st.s_id in
(SELECT sc.s_id from Score sc INNER JOIN Course co on sc.c_id=co.c_id
INNER JOIN Teacher te on te.t_id=co.t_id
WHERE te.t_name='张三');

9,查询学过编号为“01”的课程并且也学过编号为“02”的课程的学生的学号、姓名

SELECT *
FROM Student St
INNER JOIN Score Sc
on Sc.s_id=St.s_id
WHERE c_id = '01'and c_id ='02';

10,查询至少有一门课与学号为“01”的学生所学课程相同的学生的学号和姓名

SELECT st.s_id,st.s_name
from Student st
INNER JOIN Score sc
on st.s_id=sc.s_id
WHERE c_id IN (SELECT c_id from Score where s_id = 01) and st.s_id <> 01
GROUP BY st.s_id

测试面试必会sql(1)的更多相关文章

  1. 高级测试工程师面试必问面试基础整理——python基础(一)(首发公众号:子安之路)

    现在深圳市场行情,高级测试工程师因为都需要对编程语言有较高的要求,但是大部分又没有python笔试机试题,所以面试必问python基础,这里我整理一下python基本概念,陆续收集到面试中python ...

  2. MySQL面试必考知识点:揭秘亿级高并发数据库调优与最佳实践法则

    做业务,要懂基本的SQL语句: 做性能优化,要懂索引,懂引擎: 做分库分表,要懂主从,懂读写分离... 数据库的使用,是开发人员的基本功,对它掌握越清晰越深入,你能做的事情就越多. 今天我们用10分钟 ...

  3. cvte春招测试面试记录

    cvte春招测试面试记录,挂在了综合面试(hr面)...尽量回忆面试的问题(可能不完全). 技术面一面: 1.自我介绍 2.根据实习项目问,智能客服怎么测正确率之类的. 3.测试人脸解锁 4.测试微信 ...

  4. linux驱动工程面试必问知识点

    linux内核原理面试必问(由易到难) 简单型 1:linux中内核空间及用户空间的区别?用户空间与内核通信方式有哪些? 2:linux中内存划分及如何使用?虚拟地址及物理地址的概念及彼此之间的转化, ...

  5. 互联网公司面试必问的Redis题目

    Redis是一个非常火的非关系型数据库,火到什么程度呢?只要是一个互联网公司都会使用到.Redis相关的问题可以说是面试必问的,下面我从个人当面试官的经验,总结几个必须要掌握的知识点. 介绍:Redi ...

  6. 互联网公司面试必问的mysql题目(下)

    这是mysql系列的下篇,上篇文章地址我附在文末. 什么是数据库索引?索引有哪几种类型?什么是最左前缀原则?索引算法有哪些?有什么区别? 索引是对数据库表中一列或多列的值进行排序的一种结构.一个非常恰 ...

  7. 互联网公司面试必问的mysql题目(上)

    又到了招聘的旺季,被要求准备些社招.校招的题库.(如果你是应届生,尤其是东北的某大学,绝对福利哦) 介绍:MySQL是一个关系型数据库管理系统,目前属于 Oracle 旗下产品.虽然单机性能比不上or ...

  8. python笔记39-unittest框架如何将上个接口的返回结果给下个接口适用(面试必问)

    前言 面试必问:如何将上个接口的返回结果,作为下个接口的请求入参?使用unittest框架写用例时,如何将用例a的结果,给用例b使用. unittest框架的每个用例都是独立的,测试数据共享的话,需设 ...

  9. Java面试必知必会:基础

    面试考察的知识点多而杂,要完全掌握需要花费大量的时间和精力.但是面试中经常被问到的知识点却没有多少,你完全可以用 20% 的时间去掌握 80% 常问的知识点. 一.基础 包括: 杂七杂八 面向对象 数 ...

随机推荐

  1. shell脚本执行

    方法一:切换到shell脚本所在的目录执行shell脚本: cd /data/shell ./hello.sh ./的意思是说在当前的工作目录下执行hello.sh.如果不加上./,bash可能会响应 ...

  2. Loadrunner之HTTP脚本编写

    Loadrunner之HTTP脚本编写 刚学习性能测试的时候还是建议以录制脚本为好,从录制的脚本中去了解脚本结构,各个函数的用法,慢慢再去尝试自己去编写脚本,如果想往技术方向发展,建议最好学习一门编程 ...

  3. JNI由浅入深_9_JNI 异常处理

    1 .本地代码中如何缓存和抛出异常 下面的代码中演示了如何声明一个会抛出异常的本地方法.CatchThrow这个类声明了一个会抛出IllegalArgumentException异常的名叫doit的本 ...

  4. Linux 下让终端走代理的方法

    转载: https://blog.fazero.me/2015/09/15/%E8%AE%A9%E7%BB%88%E7%AB%AF%E8%B5%B0%E4%BB%A3%E7%90%86%E7%9A%8 ...

  5. ansible常用配置

    1.什么是Ansible 部署参考连接:http://www.ansible.com.cn/ ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfeng ...

  6. Python编程Message: CGI script is not executable ('/cgi-bin/xxxxx.py')

    Message: CGI script is not executable ('/cgi-bin/xxxxx.py'). 今天在练习python服务器端编程时遇到了这个错误,查阅一番最终解决 系统为l ...

  7. TinyMCE插件:RESPONSIVE filemanager 9 安装与配置

    RESPONSIVE filemanager 功能: 文件上传 文件下载 重命名文件 删除文件 新建文件夹 为每个用户创建子目录 上传文件效果图: 浏览文件效果图: 文件说明: filemanager ...

  8. php之微型博客的创建

    一,微型博客的开发思路 微型博客的创建,确定无疑我们会用到PHP和mysql之间的增添删改查,首先来看一下思维导图: 搭建好计算机里的apache php 和mysql的联动功能,打开phpmyadm ...

  9. 在docker中运行elasticsearch时go程序无法连接到节点

    错误信息: panic: no active connection found: no Elasticsearch node available 在docker中运行es时,默认启动sniffing  ...

  10. Python2+python3——多版本启动和多版本pip install问题

    背景描述: python2版本都知道维护到2020年,目前使用python的很大一部分用户群体都开始改安装并且使用最新版的python3版本了,python2和python3在编程大的层面不曾改变,有 ...