数据库SQL Server实验报告 之 SQL语言进行数据更新(6/8)

news2024/11/26 1:50:02

 SQL语言进行数据更新

生命的本质是一场历练

实验目的及要求:

  1. 掌握如何使用sql语句进行插入、删除和更新操作。
  2. 使用sql语句进行插入操作。
  3. 使用sql语句进行删除操作。
  4. 使用sql语句进行更新操作。
  5. 使用各种查询条件完成指定的查询操作

实验内容及步骤:

学生表student、课程表course和选课表SC,输入数据(注意数据的完整性。);(可以使用实验二中已经建立的表和数据)(期末在这里出)

1.按要求插入下面记录信息;

insert into student values('200515026','赵雷','男',20,'MA');--student后面可以加上属性,比如student(sno)

insert into course values('11','数据分析','5',4);

insert into sc values('200515026','1',75);--inster into .. values为插入语句

  1. 修改CS系姓名为“李勇”的学生姓名为“李咏”;

update student set sname='李咏'--update..set..语句用来更新修改数据

where sdept='cs'and

sname='李勇';

  1. 修改课程“数据处理”的学分为3学分;

update course set credit='3'--用语句将学分修改为3,然后后面语句写限制条件

where cname='数据处理'

  1. 将选修课程“1”的同学成绩加5分;

update sc set grade=grade+5

where cno='1';

  1. 将选修课程“大学英语”的同学成绩加5分;

update sc set grade=grade+5

where cno in (select cno from course where cname='大学英语');--cname并不在选课表中,所以需要以cno连接嵌套course表限制条件

  1. 将学号为“200515010”的学生信息重新设置为“王丹丹、女、20、MA”;

update student set sname='王丹丹',ssex='女',sage=20,sdept='MA'

where sno='200515010';

  1. 删除数据表student中无专业的学生记录;

delete --删除语句后面就单独一个delete,后面不跟元素名

from student

where sdept is null;--..is null 用来表述空值

  1. 删除数据表student中计算机系年龄大于25的男同学的记录;

delete

from student

where sdept='计算机'and

sage>25and

ssex='男';

  1. 删除数据表course中学分低于1学分的课程信息;

delete

from course

where credit<1--建表的时候,学分是数值型的不用加''.

  1. 在SC中删除尚无成绩的选课元组。

delete

from sc

where grade is null;

  1. 把选修“大学英语”课程的女同学选课元组全部除去。

delete

from sc

where sno in(select sno from student where ssex='女')and

cno in(select cno from course where cname='大学英语');--通过sc表自身的属性列表来连接嵌套其他表

  1. 把数学课不及格的成绩全改为60分。

update sc set grade=60

where grade<60 and--grade直接在sc表中,所以不用嵌套连接。

cno in (select cno from course where cname='数学');--更新的是sc表,只有cno能表示,所以用cno嵌套连接course中的数学课

  1. 把低于所有课程总平均成绩的女同学成绩提高5%。

update sc set grade=grade*1.05

where sno in (select sno from student where ssex='女')and

grade<(select avg(grade)from sc)--where 后面不能接聚合函数,所以需要嵌套

  1. 定义CS系选修1号课程且成绩为优秀的学生视图。

create view cs_c1(sno,sname,grade) as--查询学生一般指姓名学号

select student.sno,sname,grade--子查询

from student,sc--如果用嵌套只能输出一个表里的属性,因为要输出grade所以必须连接表sc

where student.sno=sc.sno and

sdept='cs'and cno=1;

  1. 定义学生的平均成绩视图。

create view avg_grade(sno,avg)as

select sc.sno,avg(grade)

from sc--学生平均成绩视图只需要知道学号即可,加入姓名需要连接student表,造成复杂

group by sno;--学生的平均成绩,只能是同一个学生各科的成绩,所以分组把每个学生分开

  1. 查询平均成绩90分以上的学生学号及其平均成绩。

方法一:利用15题建立的视图查询

select sno,avg

from avg_grade

where avg>90

方法二:利用基本表查询

select sc.sno,avg(grade) avg

from sc,student

where sc.sno=student.sno

group by sc.sno

having avg(grade)>90;--因为是求每个学生自己的平均成绩,所以需要分组后再计算平均成绩

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

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

相关文章

计算机基础--->网络(2)【TCP、UDP、IP、ARP】

文章目录 TCP与UDP的区别TCP三次握手和四次挥手为什么要三次握手&#xff1f;第二次握手传回了ACK&#xff0c;为什么还要传回SYN&#xff1f;为什么要四次挥手&#xff1f;为什么不能将服务器发送的ACK和FIN合并起来&#xff0c;变成三次挥手&#xff1f;TCP如何保证传输的可靠…

推荐召回-Swing

概述 swing 是阿里原创的 i2i 召回算法&#xff0c;在阿里内部的多个业务场景被验证是一种非常有效的召回方法。据笔者了解&#xff0c;swing 在工业界已得到比较广泛的使用&#xff0c;抖音&#xff0c;小红书&#xff0c;B 站等推荐系统均使用了swing i2i。 1.传统 icf 算法…

MySql常见问题(长期更新)

基于mysql 8.0.3版本 一、忘记root密码1.1 、linux 系统下忘记密码1.2、Windows 系统下忘记密码1.3 Unix 和类 Unix 系统 二、账号问题2.1 远程访问账号设置 一、忘记root密码 1.1 、linux 系统下忘记密码 啥&#xff1f;你问我为什么会忘记密码&#xff1f;别问&#xff0c;…

Flutter状态管理新的实践 | 京东云技术团队

1 背景介绍 1.1 声明式ui 声明式UI其实并不是近几年的新技术&#xff0c;但是近几年声明式UI框架非常的火热。单说移动端&#xff0c;跨平台方案有&#xff1a;RN、Flutter。iOS原生有&#xff1a;SwiftUI。android原生有&#xff1a;compose。可以看到声明式UI是以后的前端发…

大数据从0到1的完美落地之sqoop优化

Sqoop的Job与优化 Job操作 job的好处&#xff1a; 1、一次创建&#xff0c;后面不需要创建&#xff0c;可重复执行job即可 2、它可以帮我们记录增量导入数据的最后记录值 3、job的元数据默认存储目录&#xff1a;$HOME/.sqoop/ 4、job的元数据也可以存储于mysql中。 复制代码…

C# 特性总结

目录 特性是什么&#xff1f; 如何使用特性&#xff1f; &#xff08;1&#xff09;.Net 框架预定义特性 &#xff08;2&#xff09;自定义特性 为什么要使用特性&#xff1f; 特性的应用 特性实现枚举展示描述信息 特性是什么&#xff1f; 特性&#xff08;Attribute&…

拉新、转化、留存,一个做不好,就可能会噶?

用户周期 对于我们各个平台来说&#xff08;CSDN也是&#xff09;&#xff0c;我们用户都会有一个生命周期&#xff1a;引入期–成长期–成熟期–休眠期–流失期。 而一般获客就在引入期&#xff0c;在这个时候我们会通过推广的手段进行拉新&#xff1b;升值期则发生在成长期…

智能制造工厂的SCADA解决方案应用

智能制造工厂是当今工业领域的一个重要趋势&#xff0c;它将传统的生产模式与现代信息技术相结合&#xff0c;实现了生产过程的智能化和自动化。 SCADA是一种监控与数据采集系统&#xff0c;广泛应用于工业自动化领域&#xff0c;它通过传感器、控制器和网络等设备&#xff0c…

基于Python机器学习算法小分子药性预测(岭回归+随机森林回归+极端森林回归+加权平均融合模型)

目录 前言总体设计系统整体结构图系统流程图 运行环境Python 环境配置工具包 模块实现1. 数据预处理2. 创建模型并编译3. 模型训练 系统测试工程源代码下载其它资料下载 前言 《麻省理工科技评论》于2020年发布了“十大突破性技术”预测&#xff0c;其中包括“AI药物分子发现”…

一文说透!华熙生物如何步步为营炼就品牌势能?

据华熙生物2022年财报&#xff0c;华熙生物2022年营收同比增长28.53%&#xff0c;净利润同比增长24%&#xff0c;成为全球最大的。同时&#xff0c;近年来也在C端也大展身手。华熙生物此前与故宫博物院合作&#xff0c;推出6 款故宫国宝色口红和2款“故宫美人面膜”。凭借精美的…

中小型企业需要官网和帮助中心吗?为何这样说?

随着互联网技术的不断发展&#xff0c;越来越多的中小型企业开始重视拥有自己的官网和帮助中心。但是&#xff0c;对于许多刚刚起步的中小型企业来说&#xff0c;官网和帮助中心的建设可能需要一定的成本和时间投入。那么&#xff0c;中小型企业是否需要官网和帮助中心呢&#…

python(11):python读取excel、csv文件

1.python读取excel文件 要读取Excel表格的指定行和列范围&#xff0c;可以使用Python中的第三方库pandas。pandas库提供了强大的数据分析和处理工具&#xff0c;包括读取和处理Excel文件的功能。以下是一个示例代码&#xff0c;演示了如何使用pandas库读取Excel表格中的指定行…

[Go]-Go语言第一课

1-1 Go语言特点 特点&#xff1a; 1. 静态类型&#xff0c;编译开源语言2. 脚本化的语法&#xff0c;支持多种编程范式&#xff08;函数式&#xff0c;面向对象&#xff09;3. 原生&#xff0c;给力的并发支持并发编程1-2 Go语言优势与劣势 Go语言的优势&#xff1a; 1.脚本化…

软考A计划-系统集成项目管理工程师-信息化知识(三)

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例点击跳转>软考全系列 &#x1f449;关于作者 专注于Android/Unity和各种游戏开发技巧&#xff…

加密市场与上一轮周期有何异同?五大因素探讨加密市场未来之路

数字资产市场在一季度表现不俗&#xff0c;但二季度的表现却出现了相反的情况。数据显示&#xff0c;BTC 在一季度累计上涨了 71.69%&#xff0c;而二季度截至目前下跌了 7.31%。这样的变化主要是由金融监管机构针对整个数字资产行业采取的监管行动造成的。虽然 BTC 今年以来仍…

uniapp中uni-popup的用法——实例讲解

uni-pop弹出层组件&#xff0c;在应用中弹出一个消息提示窗口、提示框等,可以设置弹出层的位置&#xff0c;是中间、底部、还是顶部。 如下图效果所示&#xff1a;白色区域则为弹出的pop层。 一、 创建一个自定义组件&#xff1a; 1.项目中安装下载uni-pop插件。 2.把pop内容…

2023.6.19项目部署(一)前端项目部署

文章目录 项目部署&#xff08;一&#xff09;前端项目一、安装宝塔面板1、安装宝塔面板2、放行端口3、安装相关软件4、添加站点 二、项目打包1、Springboot打包2、vue项目打包 三、前端项目部署1、安装nginx2、修改配置文件 项目部署&#xff08;一&#xff09;前端项目 将开…

SQL优化的几种方法

目录 避免使用select *用union all代替union小表驱动大表批量操作多用limitSQL查找是否"存在"&#xff0c;别再count了&#xff01;in中值太多增量查询高效的分页用连接查询代替子查询join的表不宜过多join时要注意控制索引的数量选择合理的字段类型提升group by的效…

HTTPHTTPS协议详解

目录 一、HTTP是什么&#xff1f; 理解 "应用层协议" 理解 HTTP 协议的工作过程 二、HTTP 协议格式 抓包工具的使用 抓包工具的原理 抓包结果 协议格式总结 三、HTTP 请求 (Request) 认识 URL URL 基本格式 认识 "方法" (method) 认识请求 &quo…

使用Java设计实现一个高效可伸缩的计算结果缓存

目录 概述1.缓存实现1.1 使用HashMapSynchronized实现缓存1.2 使用ConcurrentHashMap代替HashMap改进缓存的并发1.3 完成可伸缩性高效缓存的最终方案1.4 测试代码 2.并发技巧总结 概述 现在的软件开发中几乎所有的应用都会用到某种形式的缓存&#xff0c;重用之前的计算结果能…