数据库多表查询作业

news/2024/11/29 7:40:31/

数据库多表查询作业

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
创建数据库
在这里插入图片描述
插入数据

mysql> insert into student values(901,'张老大','男',1985,'计算机系','北京市海淀区'),-> (902,'张老二','男',1986,'中文系','北京市昌平市'),-> (903,'张三','女',1990,'中文系','湖南省永州市'),                                           -> (904,'李四','男',1990,'英语系','辽宁省阜新市'),                                           -> (905,'王五','女',1991,'英语系','福建省厦门市'),-> (906,'王六','男',1988,'计算机系','湖南省衡阳市');mysql> insert into score values(null,901,'计算机',98),-> (null,901,'英语',80),-> (null,902,'计算机',65),-> (null,902,'中文',88),-> (null,903,'中文',95),-> (null,904,'计算机',70),-> (null,904,'英语',92),-> (null,905,'英语',94),-> (null,906,'计算机',90),-> (null,906,'英语',85);

在这里插入图片描述
1.查询student表的所有记录

mysql> select * from student;

在这里插入图片描述

2.查询student表的第2条到4条记录

mysql> select * from student limit 1,3;

在这里插入图片描述

3.从student表查询所有学生的学号(id)、姓名
(name)和院系(department)的信息

mysql> select id as 学号,name as 姓名,department as 院系 from student;

在这里插入图片描述

4.从student表中查询计算机系和英语系的学生的信息

mysql> select * from student where department='计算机系' or department='英语系';

在这里插入图片描述

5.从student表中查询年龄18~22岁的学生信息

mysql> select *,year(curdate())-birth as age from student where year(curdate())-birth between 18 and 22;

在这里插入图片描述

6.从student表中查询每个院系有多少人

mysql> select department as 院系,count(*) as 人数 from student group by department;

在这里插入图片描述

7.从score表中查询每个科目的最高分

mysql> select c_name as 科目,max(grade) as 最高分 from score group by c_name;

在这里插入图片描述

8.查询李四的考试科目(c_name)和考试成绩(grade)

mysql> select name as 姓名,c_name as 科目,grade as 成绩 from student-> inner join score on student.id=score.stu_id-> where name='李四';

在这里插入图片描述

9.用连接的方式查询所有学生的信息和考试信息

mysql> select * from student iudent inner join score on student.id=score.stu_id;

在这里插入图片描述

10.计算每个学生的总成绩

mysql> select name as 姓名,sum(grade) as 总成绩 from student-> inner join score on student.id=score.stu_id-> group by name;

在这里插入图片描述

11.计算每个考试科目的平均成绩

mysql> select avg(grade) from score group by c_name;

在这里插入图片描述

12.查询计算机成绩低于95的学生信息

mysql> select * from student-> inner join (select stu_id,c_name,grade from score where grade<95 and c_name='计算机') as stu-> on student.id=stu.stu_id;

在这里插入图片描述

13.查询同时参加计算机和英语考试的学生的信息

获取同时考计算机和英语的学生ID

select * from score where c_name='英语') as sc2 where sc1.stu_id=sc2.stu_id

根据ID获取学生信息

mysql> select * from student inner join (select sc1.stu_id from (select * from score where c_name='计算机') as sc1,(select * from score where c_name='英语') as sc2 where sc1.stu_id=sc2.stu_id) as sc on student.id=sc.stu_id;

在这里插入图片描述

14.将计算机考试成绩按从高到低进行排序

mysql> select * from score where c_name='计算机' order by grade desc;

在这里插入图片描述

15.从student表和score表中查询出学生的学号,然后合并查询结果

mysql> select student.id,score.stu_id from student inner join (select distinct stu_id from score) as score on student.id=score.stu_id;

在这里插入图片描述

16.查询姓张或者姓王的同学的姓名、院系和考试科目及成绩

mysql> select stu.name as 姓名, stu.department as 院系, score.c_name as 科目,score.grade as  成绩-> from score inner join-> (select * from student where name like '张%' or name like '王') as stu-> on score.stu_id=stu.id;

在这里插入图片描述

17.查询都是湖南的学生的姓名、年龄、院系和考试科目及成绩

mysql> select stu.name as 姓名,year(curdate())-stu.birth as age,stu.department as 院系,score.c_name as 科目,score.grade as 成绩-> from score-> inner join-> (select * from student where address like '%湖南%') as stu-> on score.stu_id=stu.id;

在这里插入图片描述


http://www.ppmy.cn/news/901383.html

相关文章

【搭建自动化测试框架】

1、接口自动化怎么做&#xff1f;web自动化怎么做&#xff1f; 项目组自动化刚开始起步时&#xff0c;搭建自动化测试框架的实施过程&#xff1a; &#xff08;1&#xff09;可行性分析 项目组做自动化的可行性分析&#xff0c;自动化实现到什么样的程度。 &#xff08;2&…

【驱动】TX2移植EC20启动模块

1、简述 TX2默认没有EC20(4G模块)的驱动。 连接usb后,使用lsusb查看可以看到EC20的vid和pid,但是不能上网,因此需要移植EC20的驱动 Bus 001 Devide 004: ID 2c7c:01252、4G驱动简述 在移远手册《Quectel_WCDMA&LTE_Linux_USB_Driver_User_Guide_V1.8.pdf》中,有各…

景嘉微7201

220112-驱动与固件-景嘉微7201驱动与固件-三期超翔TF830JM7201显卡黑屏、花屏、竖线或待机唤醒黑屏 JM72系列为了让驱动和系统内核解绑&#xff0c;驱动包含核内和核外两个驱动&#xff0c;两个驱动请都务必安装&#xff1b; 最近JM7201 替代R7 340 发货了&#xff0c; 导致对应…

赛宁Tech Talk丨工业网络安全“亮红灯” 超逼真工控仿真上阵守护

近年&#xff0c;传统行业数字化转型加速&#xff0c;工业互联网产值规模逐年扩大。工业互联网打破了传统工业控制系统相对封闭的生产环境&#xff0c;暴露面大大增加&#xff0c;网络安全问题关注度持续升温。 作为工业领域的“神经中枢”&#xff0c;工控系统网络安全保护面临…

jxd android 4.1刷机包,金星JXD V3固件

这是金星JXD V3固件&#xff0c;整理了一下有关金星JXD V3的官方固件包了&#xff0c;有没有需要的呢&#xff0c;这里把固件包整理一下也是方便大家以后好下载了&#xff0c;因此有一些机友还是不知道在哪里下载官方的rom包&#xff0c;在这里说的固件rom包也就是原版的系统包…

蓝凌EKP V12

https://github.com/harry1080/EKPV12 蓝凌EKP V12&#xff0c;蓝凌作为OA和知识管理领域绝对数一数二的供应商&#xff0c;其产品中关于流程的相关设计&#xff0c;还是很灵活很先进的&#xff0c;可能没有activity和jbpm的那么完善的功能&#xff0c;但是相比于这些开源组件…

CK-FR208-EC与汇川PLC配置走EtherCAT通讯指南

CK-FR208-EC与汇川PLC配置走EtherCAT通讯指南 CK-FR208-EC是一款支持标准工业Ethercat协议的多通道工业RFID读写器&#xff0c;读卡器工作频率为13.56MHZ&#xff0c;支持对I-CODE 2、I-CODE SLI等符合ISO15693国际标准协议格式标签的读写。 读卡器同时支持标准工业通讯协议Eth…

银河麒麟V10桌面版SP1(x86)上面运行和安装exe程序

1、安装CrossOver 首先先更新一下软件集&#xff1a; leallocalhost:sudo apt update 然后再安装 KWRE 版的微信。 leallocalhost:sudo apt install kylin-kwre-wechat 安装成功后打开CrossOver程序&#xff1a; 2、添加windows容器 介绍&#xff1a;容器有Windows 98、w…