数据库原理及应用mysql版陈业斌实验二

🏝️专栏:Mysql_猫咪-9527的博客-CSDN博客
🌅主页:猫咪-9527-CSDN博客 

“欲穷千里目,更上一层楼。会当凌绝顶,一览众山小。”

目录

实验二单表查询

1.实验数据如下

student 表(学生表)

course 表(课程表)

teacher 表(教师表)

score 表(成绩表)

2. 插入数据

student 表中的数据

course 表中的数据

teacher 表中的数据

score 表中的数据

2-1 简单查询语句

2-2 分组统计


实验二单表查询

实验目的:

通过实验掌握数据库系统单表查询的方法

1.实验数据如下

student 表(学生表)
CREATE TABLE student (sno CHAR(5) PRIMARY KEY,snme VARCHAR(20) NOT NULL,        sdept VARCHAR(20) NOT NULL,       sclass CHAR(2) NOT NULL,          ssex CHAR(1),                     birthday DATE,                  totalcredit DECIMAL(4,1)          
);
course 表(课程表)
CREATE TABLE course (cno CHAR(3) PRIMARY KEY,cname VARCHAR(50),       ctime DECIMAL(3,0),          credit DECIMAL(3,1) 
);
teacher 表(教师表)
CREATE TABLE teacher (tno CHAR(6) PRIMARY KEY,          tname VARCHAR(20),               tsex CHAR(1),                    tdept VARCHAR(20)                 
);
score 表(成绩表)
CREATE TABLE score (sno CHAR(5),                      cno CHAR(3),                      tno CHAR(6),                     grade DECIMAL(5,1),              PRIMARY KEY (sno, cno, tno),      CONSTRAINT fk_sno FOREIGN KEY(sno) REFERENCES student(sno),CONSTRAINT fk_cno FOREIGN KEY(cno) REFERENCES course(cno),CONSTRAINT fk_tno FOREIGN KEY(tno) REFERENCES teacher(tno)
);

2. 插入数据

student 表中的数据
INSERT INTO student VALUES('96001', '马小燕', '计算机', '01', '女', '2000/01/02', 0);
INSERT INTO student VALUES('96002', '黎明', '计算机', '01', '男', '2000/03/05', 0);
INSERT INTO student VALUES('96003', '刘东明', '数学', '01', '男', '2000/10/05', 0);
INSERT INTO student VALUES('96004', '赵志勇', '信息', '02', '男', '2000/08/08', 0);
INSERT INTO student VALUES('97001', '马蓉', '数学', '02', '女', '2001/03/04', 0);
INSERT INTO student VALUES('97002', '李成功', '计算机', '01', '男', '2001/09/10', 0);
INSERT INTO student VALUES('97003', '黎明', '信息', '03', '女', '2002/02/08', 0);
INSERT INTO student VALUES('97004', '李丽', '计算机', '02', '女', '2002/01/05', 0);
INSERT INTO student VALUES('96005', '司马志明', '计算机', '02', '男', '2001/11/23', 0);
course 表中的数据
INSERT INTO course VALUES('001', '数学分析', 64, 4);
INSERT INTO course VALUES('002', '普通物理', 64, 4);
INSERT INTO course VALUES('003', '微机原理', 56, 3.5);
INSERT INTO course VALUES('004', '数据结构', 64, 4);
INSERT INTO course VALUES('005', '操作系统', 56, 3.5);
INSERT INTO course VALUES('006', '数据库原理', 56, 3.5);
INSERT INTO course VALUES('007', '编译原理', 48, 3);
INSERT INTO course VALUES('008', '程序设计', 32, 2);
teacher 表中的数据
INSERT INTO teacher VALUES('052501', '王成刚', '男', '计算机');
INSERT INTO teacher VALUES('052502', '李正科', '男', '计算机');
INSERT INTO teacher VALUES('052503', '严敏', '女', '数学');
INSERT INTO teacher VALUES('052504', '赵高', '男', '数学');
INSERT INTO teacher VALUES('052505', '刘玉兰', '女', '计算机');
INSERT INTO teacher VALUES('052506', '王成刚', '男', '信息');
INSERT INTO teacher VALUES('052507', '马悦', '女', '计算机');
score 表中的数据
INSERT INTO score VALUES('96001', '001', '052503', 77.5);
INSERT INTO score VALUES('96001', '003', '052501', 89);
INSERT INTO score VALUES('96001', '004', '052502', 86);
INSERT INTO score VALUES('96001', '005', '052505', 82);
INSERT INTO score VALUES('96002', '001', '052504', 88);
INSERT INTO score VALUES('96002', '003', '052502', 92.5);
INSERT INTO score VALUES('96002', '006', '052507', 90);
INSERT INTO score VALUES('96005', '004', '052502', 92);
INSERT INTO score VALUES('96005', '005', '052505', 90);
INSERT INTO score VALUES('96005', '006', '052505', 89);
INSERT INTO score VALUES('96005', '007', '052507', 78);
INSERT INTO score VALUES('96003', '001', '052504', 69);
INSERT INTO score VALUES('97001', '001', '052504', 96);
INSERT INTO score VALUES('97001', '008', '052505', 95);
INSERT INTO score VALUES('96004', '001', '052503', 87);
INSERT INTO score VALUES('96003', '003', '052501', 91);
INSERT INTO score VALUES('97002', '003', '052502', 91);
INSERT INTO score VALUES('97002', '004', '052505', NULL);
INSERT INTO score VALUES('97002', '006', '052507', 92);
INSERT INTO score VALUES('97004', '005', '052502', 90);
INSERT INTO score VALUES('97004', '006', '052501', 85);

 注:把上面的实验数据添加上再开始实验。

2-1 简单查询语句

  • 查询年龄大于20的学生的学号、姓名和年龄,结果列别名为“学号”“姓名”“年龄”
select sno 学号, snme 姓名, datediff(now(),birthday)/365 年龄 
from student where date_add(birthday,interval 20 year)<now();

  • 查询选修了课程的学生学号,结果表中学号显示唯一
select distinct sno from score;

  • 查询不是计算机系或信息系的学生
select *from student where sdept not in ('计算机','信息');

  • 查询学时在1~50的课程信息
select *from course where ctime between 1 and 50;

查询姓名长度至少是3个汉字且倒数第三个汉字必须是“马”的学生

select *from student where snme like '%马__';

  • 查询选修老师编号为052501、成绩在80~90、学号为96xxx的学生成绩
select *from score where sno like '96%' 
and tno ='052501' and grade between 80 and 90;

  • 查询没有成绩的学生的学号和课程号
select *from score where grade is null;

2-2 分组统计

  • 查询学生总人数
select count(*) from student;

  • 查询选修了课程的学生人数
SELECT COUNT(DISTINCT 学号) AS 选修课程学生人数
FROM 选修;

  • 查询选修各门课程的最高、最低与平均成绩
select cno,max(grade),min(grade),avg(grade) from score  group by cno;

  • 查询学生人数不足3人的系别及其相应的学生人数
select sdept 系,count(*) from student group by sdept having count(*)<3 ;

  • 查询各系中各班的学生人数,结果按班级人数降序排列
select sdept,sclass,count(*) from student group by sdept, 
sclass order by count(*) desc;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/73732.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SDL —— 将sdl渲染画面嵌入Qt窗口显示(附:源码)

🔔 SDL/SDL2 相关技术、疑难杂症文章合集(掌握后可自封大侠 ⓿_⓿)(记得收藏,持续更新中…) 效果 使用QWidget加载了SDL的窗口,渲染器使用硬件加速跑GPU的。支持Qt窗口缩放或显示隐藏均不影响SDL的图像刷新。   操作步骤 1、在创建C++空工程时加入SDL,引入头文件时需…

C语言之链表增删查改

1.知识百科 链表&#xff08;Linked List&#xff09;是计算机科学中一种基础的数据结构&#xff0c;通过节点&#xff08;Node&#xff09;的链式连接来存储数据。每个节点包含两部分&#xff1a;存储数据的元素和指向下一个节点的指针&#xff08;单链表&#xff09;或前后两…

Windows环境下AnythingLLM安装与Ollama+DeepSeek集成指南

前面已经完成了Ollama的安装并下载了deepseek大模型包&#xff0c;下面介绍如何与anythingLLM 集成 Windows环境下AnythingLLM安装与OllamaDeepSeek集成指南 一、安装准备 1. 硬件要求 如上文说明 2. 前置条件 已安装Ollama并下载DeepSeek模型&#xff08;如deepseek-r1:…

当贝AI知识库评测 AI如何让知识检索快人一步

近日,国内领先的人工智能服务商当贝AI正式推出“个人知识库”功能,这一创新性工具迅速引发行业关注。在信息爆炸的时代,如何高效管理个人知识资产、快速获取精准答案成为用户的核心需求。当贝AI通过将“闭卷考试”变为“开卷考试”的独特设计,为用户打造了一个高度个性化的智能…

HarmonyOS NEXT——【鸿蒙原生应用加载Web页面】

鸿蒙客户端加载Web页面&#xff1a; 在鸿蒙原生应用中&#xff0c;我们需要使用前端页面做混合开发&#xff0c;方法之一是使用Web组件直接加载前端页面&#xff0c;其中WebView提供了一系列相关的方法适配鸿蒙原生与web之间的使用。 效果 web页面展示&#xff1a; Column()…

嵌入式开发场景中Shell脚本执行方式的对比

‌Shell脚本执行方式对比表‌ ‌执行方式‌‌命令示例‌‌是否需要执行权限‌‌是否启动子Shell‌‌环境变量影响范围‌‌适用场景‌‌嵌入式开发中的典型应用‌‌直接执行脚本‌./script.sh是是子Shell内有效独立运行的脚本&#xff0c;需固定环境自动化构建脚本&#xff08;…

MES系统需要采集的数据及如何采集

​数据采集在企业信息化建设中占据着举足轻重的地位&#xff0c;是实现物料跟踪、生产计划制定、产品历史记录维护以及其他生产管理活动的基石。数据的准确性和实时性直接关系到企业信息化能否成功落地&#xff0c;是企业迈向高效生产的关键因素。 数据收集对于MES制造执行系统…

闭环管理:借助数字化管理平台实现客户反馈的价值升级

在竞争激烈的市场环境中&#xff0c;客户反馈已成为企业优化服务、提升竞争力的核心资源。如何高效处理客户反馈&#xff0c;将其转化为企业持续改进的动力&#xff0c;是每个企业面临的重要课题。作为服务管理数字化转型服务商&#xff0c;瑞云服务云为大中型企业提供了一套完…

C++Primer学习(13.6 对象移动)

13.6 对象移动 新标准的一个最主要的特性是可以移动而非拷贝对象的能力。如我们在13.1.1节(第440页)中所见&#xff0c;很多情况下都会发生对象拷贝。在其中某些情况下&#xff0c;对象拷贝后就立即被销毁了。在这些情况下&#xff0c;移动而非拷贝对象会大幅度提升性能。 如我…

Uni-app页面信息与元素影响解析

获取窗口信息uni.getWindowInfo {pixelRatio: 3safeArea:{bottom: 778height: 731left: 0right: 375top: 47width: 375}safeAreaInsets: {top: 47, left: 0, right: 0, bottom: 34},screenHeight: 812,screenTop: 0,screenWidth: 375,statusBarHeight: 47,windowBottom: 0,win…

大模型 API 调用中的流式输出与非流式输出全面对比:原理、场景与最佳实践

流式输出与非流式输出应用场景 流式输出的理想应用场景 实时对话系统聊天机器人和虚拟助手客服系统和用户支持平台实时问答和教育辅导应用 渐进式内容生成代码补全和编程辅助工具&#xff08;如 GitHub Copilot&#xff09;实时文档协作和编辑系统创意写作和内容创作平台 用户…

Problem A: 计算奇数和

补充&#xff08;牢骚&#xff09;&#xff1a; 必须要 Main 类&#xff0c;自己自定义的类不能跑&#xff0c;说实话我被恶心到了&#xff0c;真没力扣好用。后面都默认为Main 类。真恶心&#xff0c;其实不止这一点。。。 1.题目问题 2.输入 3.输出 4.样例 5.代码实现 imp…

深度赋能!北京智和信通融合DeepSeek,解锁智能运维无限可能

在数字化飞速发展的今天&#xff0c;传统运维模式面临着设备规模激增、故障复杂度攀升、人工响应滞后等多重挑战。随着DeepSeek、腾讯元宝等AI大模型的兴起&#xff0c;为传统运维模式带来了新的变革。 北京智和信通基于DeepSeek大模型技术&#xff0c;将AI和运维场景深度融合&…

2024年第五届MathorCup数学应用挑战赛大数据竞赛复赛论文

2024年第五届MathorCup数学应用挑战赛——大数据竞赛 复赛(二等奖)论文 本人亲自与队友完成的论文&#xff0c;进入复赛但由于和亚太时间冲突&#xff0c;身体很累最后放弃了复赛并没有参赛…最后获二等奖&#xff1b; 虽然如果参加的话一等奖问题应该不大&#xff0c;但是分配…

性能测试~

1.什么是性能测试 1.什么是性能 就像这两个车一样,虽然都是代步工具,构造都是一样的,但是路虎的发动机要比捷达好.路虎的百米加速却是比捷达快的,我们就知道路虎的性能要比捷达好 . 那么什么是软件的性能呢?我们分析一下 2.常见的性能测试指标 2.1并发数 并发数是指在同一…

【极速版 -- 大模型入门到进阶】LORA:大模型轻量级微调

文章目录 &#x1f30a; 有没有低成本的方法微调大模型&#xff1f;&#x1f30a; LoRA 的核心思想&#x1f30a; LoRA 的初始化和 r r r 的值设定&#x1f30a; LoRA 实战&#xff1a;LoraConfig参数详解 论文指路&#xff1a;LORA: LOW-RANK ADAPTATION OF LARGE LANGUAGE M…

【论文分析】无人机轨迹规划,Fast-Planner:实时避障+全局最优的路径引导优化算法

这篇论文《Robust Real-time UAV Replanning Using Guided Gradient-based Optimization and Topological Paths》由香港科技大学提出&#xff0c;主要针对无人机&#xff08;UAV&#xff09;在复杂环境中的实时轨迹重新规划问题&#xff0c;提出了一种结合梯度优化和拓扑路径搜…

禅道品牌全面战略升级:开创项目管理国产化替代新格局

2025年&#xff0c;禅道软件完成企业品牌战略深度升级。此次升级&#xff0c;从产品力、服务力到生态圈构建等方面进行了全面优化&#xff0c;以更智慧的解决方案、更开放的生态布局&#xff0c;更安全的国产化解决方案&#xff0c;助力企业实现从“工具应用”到“价值创造”的…

PyTorch处理数据--Dataset和DataLoader

在 PyTorch 中&#xff0c;Dataset 和 DataLoader 是处理数据的核心工具。它们的作用是将数据高效地加载到模型中&#xff0c;支持批量处理、多线程加速和数据增强等功能。 一、Dataset&#xff1a;数据集的抽象‌ Dataset 是一个抽象类&#xff0c;用于表示数据集的接口。你…

Android 蓝牙/Wi-Fi通信协议之:经典蓝牙(BT 2.1/3.0+)介绍

在 Android 开发中&#xff0c;经典蓝牙&#xff08;BT 2.1/3.0&#xff09;支持多种协议&#xff0c;其中 RFCOMM/SPP&#xff08;串口通信&#xff09;、A2DP&#xff08;音频流传输&#xff09;和 HFP&#xff08;免提通话&#xff09;是最常用的。以下是它们在 Android 中的…