当前位置: 首页 > news >正文

表数据编辑(数据库)

目录

一、插入数据

1.插入单个元组: INSERT…VALUES语句

2.插入子查询的结果: INSERT…SELECT语句

3.使用SELECT…INTO语句进行数据插入

二、修改数据

1、数据修改语句:UPDATE

2、修改给定表的所有行

3、基于给定表修改某些行

4、基于其他表修改某些行

5.用子查询修改某些行

三、删除数据

1.数据删除语句:DELETE

2.删除给定表的所有行

3. 基于给定表删除某些行

4.基于其他表删除某些行

5.用子查询删除某些行


表数据编辑又称数据更新,包括插入数据、修改数据和删除数据三类命令。

一、插入数据

1.插入单个元组: INSERT…VALUES语句

格式为:

INSERT [INTO]<表名> [ ( ]<列名> [,…n] ) ]

VALUES ( [,…n] )

注意:

(1)未出现在列名列表中的列插入时取空值

(2)表达式数量必须和列名数量相等,表达式的数据类型必须和对应列的数据类型相兼容;

(3)关系中的NOT NULL列必须出现在列名列表中;

(4)若省略列名列表,则VALUES须指定所有列的值。

【例】将(’S060102’, ’010201’)插入选课表。

INSERT INTO 选课表 (学号, 开课号)

VALUES ('S060102', '010201')

2.插入子查询的结果: INSERT…SELECT语句

格式为:

INSERT [INTO]<表名> [ <列名>( [,…n] ) ]

SELECT语句

【例】求各个专业学生的平均累计学分,把结果存入表中。

CREATE TABLE 主修专业 ( 专业 CHAR(20), avgpa INT)

GO

INSERT INTO 主修专业(专业, avgpa)

SELECT 专业, AVG(累计学分) FROM 学生表

GROUP BY 专业

3.使用SELECT…INTO语句进行数据插入

格式为:

SELECT <目标列>[,…n] INTO<新表名>

[ SELECT语句的其他子句 ]

注意:

(1)系统会自动创建一个新表,新表的结构由目标列表达式定义,然后将 SELECT 语句的结果集插入这个新表 ;

(2)当目标列是计算列时,必须为它起别名。

【例】用SELECT … INTO语句,求各个专业学生的平均累计学分,把结果存入表中。

SELECT 专业, AVG(累计学分) AS 平均累计学分 INTO 主修专业

FROM 学生表

GROUP BY 专业

二、修改数据

1、数据修改语句:UPDATE

格式为:

UPDATE<表名> SET {<列名> = <表达式>}[,…n]

[ FROM <表名>[,…n] ]

[ WHERE <修改条件>]

注意:

(1)UPDATE语句用来修改指定表中满足WHERE条件的元组。修改方法是用SET子句中的值取代相应列的值 ;

(2)修改条件和SELECT语句中WHERE条件完全相同,它不仅可以直接使用UPDATE后面的表,也可通过引入FROM子句直接使用其他表,还可以将子查询嵌入修改条件中。

2、修改给定表的所有行

省略WHERE子句,则UPDATE将修改表的所有行。

【例】将所有学生的累计学分增加3分。

UPDATE 学生表 SET 累计学分=累计学分+3 

3、基于给定表修改某些行

如果省略FROM子句,但含有WHERE子句,则UPDATE语句将修改满足修改条件的行,但是此时的修改条件只能直接使用UPDATE后面的表所包含的列。

【例】将计算机专业所有女生的籍贯改为“杭州”,累计学分增加3分。

UPDATE 学生表 SET 累计学分=累计学分+3, 籍贯='杭州'

WHERE 专业 = '计算机' AND 性别 = '女'

4、基于其他表修改某些行

如果修改条件需要使用其他表的列,就要用FROM子句将这些表引入到UPDATE语句中。

【例】将计算机专业所有学生的数据库原理课程的成绩增加10分。

UPDATE 选课表

SET 成绩 = 成绩+10

FROM 开课表 AS O, 课程表 AS C, 学生表 AS S

WHERE 专业 = '计算机' AND 课名 = '数据库原理'

AND C.课号 = O.课号 AND O.开课号 = 选课表.开课号

AND 选课表.学号 = S.学号

5.用子查询修改某些行

UPDATE中的修改条件还可以通过嵌入子查询进行构造。

【例】用子查询构造,将计算机专业所有学生的数据库原理课程的成绩增加10分。

UPDATE 选课表

SET 成绩 = 成绩+10

FROM 学生表 AS S

WHERE 专业 = '计算机' AND 选课表.学号 = S.学号 AND 开课号

IN (SELECT 开课号 FROM 开课表 WHERE 课号 IN

( SELECT 课号 FROM 课程表 WHERE 课名 = '数据库原理' ) )

三、删除数据

1.数据删除语句:DELETE

格式为:

DELETE [FROM]<目标表名>

[ FROM <表名>[,…n] ]

[ WHERE <删除条件>]

注意:

(1) DELETE语句用来删除指定表中满足删除条件的元组;

(2)删除条件和SELECT语句中WHERE条件完全相同,它不仅可以直接使用DELETE后面的表,也可通过引入FROM子句直接使用其他表,还可以将子查询嵌入删除条件中。

2.删除给定表的所有行

省略WHERE子句,则DELETE将删除表的所有行。

【例】将Student表清空。

DELETE FROM Student 3.

3. 基于给定表删除某些行

如果省略FROM子句,但含有WHERE子句,则DELETE语句将删除满足删除条件的行,但是此时的删除条件只能直接使用DELETE后面的表所包含的列。

【例】从Student表中删除计算机专业所有女生的信息。

DELETE FROM 学生表

WHERE 专业 = '计算机' AND 性别 = '女'

4.基于其他表删除某些行

如果删除条件需要使用其他表的列,就要用FROM子句将这些表引入到DELETE语句中。

【例】从选课t表中删除计算机专业所有学生对数据库原理课程的选修信息。

DELETE FROM 选课表 FROM 开课表 AS O, 课程表 AS C, 学生表 AS S

WHERE 专业 = '计算机'

AND 课名 = '数据库原理'

AND C.课号 = O.课号

AND O.开课号 = 选课表.开课号

AND 选课表.学号 = S.学号

5.用子查询删除某些行

DELETE中的删除条件还可以通过嵌入子查询进行构造。

【例】用子查询构造从选课t表中删除计算机专业所有学生对数据库原理课程的选修信息。

DELETE FROM 选课表 FROM 学生表 AS S

WHERE 专业 = '计算机' AND 选课表.学号 = S.学号 AND 开课号

      IN ( SELECT 开课号

             FROM 开课表WHERE 课号

             IN ( SELECT 课号 FROM 课程表

                    WHERE 课名 = '数据库原理’ ) )

相关文章:

表数据编辑(数据库)

目录 一、插入数据 1&#xff0e;插入单个元组: INSERT…VALUES语句 2&#xff0e;插入子查询的结果: INSERT…SELECT语句 3&#xff0e;使用SELECT…INTO语句进行数据插入 二、修改数据 1、数据修改语句&#xff1a;UPDATE 2、修改给定表的所有行 3、基于给定表修改某…...

考虑多能负荷不确定性的区域综合能源系统鲁棒规划(Python代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…...

RocketMQ整理

RocketMQ在阿里云上的商业版本,集成了阿里内部一些更深层次的功能及运维定制。开源版本,功能上略有缺失,但大体上是一样的。 使用Java开发,便于深度定制。最早叫MetaQ。消息吞吐量虽然依然不如Kafka,但是却比RabbitMQ高很多。在阿里内部,RocketMQ集群每天处理的请求数超过…...

Springboot +Flowable,会签、或签简单使用(二)

一.简介 **会签&#xff1a;**在一个流程中的某一个 Task 上&#xff0c;这个 Task 需要多个用户审批&#xff0c;当多个用户全部审批通过&#xff0c;或者多个用户中的某几个用户审批通过&#xff0c;就算通过。 例如&#xff1a;之前的请假流程&#xff0c;假设这个请假流程…...

将核心交换机配置为NTP服务器

AR配置外源NTP 1&#xff0e;配置ntp <XQ-R1220>sys [XQ-R1220]ntp-service unicast-server 120.25.115.20 #阿里云ntp [XQ-R1220]ntp-service unicast-server 203.107.6.88 #阿里云ntp 2&#xff0e;查看ntp状态 <XQ-R1220>display ntp status clock sta…...

application.properties文件注释

这是一个常用的Spring Boot配置文件 在这里&#xff0c;我们可以配置应用程序的各种属性 服务器端口号 server.port8080 数据库配置 spring.datasource.urljdbc:mysql://localhost:3306/test spring.datasource.usernameroot spring.datasource.password123456 spring.datasou…...

MySql查询报错this is incompatible with sql_mode=only_full_group_by

错误示例 Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘yiliaohaocai_new.a.id’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_modeonly_full_group_by 原因 SQL …...

VMware Workstation 网络备忘 + 集群规模

概述 在虚拟机中部署服务&#xff0c;进行IP规划&#xff0c;进行相关的前期准备 3 张网卡 2个不同的网段 1个NAT 概述截图 NAT 截图 VMnet0 截图 VMnet1 截图 总结&#xff1a; 网卡&#xff08;网络适配器&#xff09;名称IP网段备注NATens33192.168.139.0VMnet0ens34VMne…...

被裁现状,给找工作的同学一些建议

2022 到 2023 国内知名互联网公司腾讯、阿里、百度、快手、滴滴、京东、阿里、爱奇艺、知乎、字节跳动、小米等公司均有裁员&#xff0c;其中有不少公司&#xff0c;在过去年的一整年&#xff0c;进行了多轮裁员&#xff0c;以下是网传的一张 “2022 年裁员企业名单”。 这些裁…...

编程到底难在哪里?

编程是一门非常有挑战性的技术&#xff0c;能够让人们使用计算机来完成各种任务。它不仅需要掌握各种计算机语言和框架&#xff0c;还需要在实际应用中充分发挥自己的专业知识和创造力。 然而&#xff0c;对于初学者来说&#xff0c;在编程过程中遇到的难点可能是多方面的。以…...

C++ 仿函数(一)

目录 一、仿函数是什么&#xff1f; 二、仿函数的特点 1.仿函数在使用时&#xff0c;可以像普通函数那样调用, 可以有参数&#xff0c;可以有返回值 2.仿函数超出普通函数的概念&#xff0c;可以有自己的状态 ​编辑3.仿函数可以作为参数传递。 三、谓词 一元谓词示例&a…...

MATLAB连续LTI系统的时域分析(十)

目录 1、实验目的&#xff1a; 2、实验内容&#xff1a; 1、实验目的&#xff1a; 1&#xff09;掌握利用MATLAB对系统进行时域分析的方法&#xff1b; 2&#xff09;掌握连续时间系统零输入响应的求解方法&#xff1b; 3&#xff09;掌握连续时间系统零状态响应、冲激响应和…...

HBuilderX使用

HBuilderX使用&#xff08;Vue前后端分离&#xff09; 概述&#xff1a;DCloud开发者后台 DAccount Service 1、官网下载开发工具&#xff1a;HBuilderX-高效极客技巧 注意&#xff1a;安装目录路径中不能出现中文特殊字符&#xff0c;否则会造成项目无法编译。比如C:/Progr…...

【JavaSE】多态(多态实现的条件 重写 向上转移和向下转型 向上转型 向下转型 多态的优缺点 避免在构造方法种调用重写的方法)

文章目录 多态多态实现的条件重写向上转移和向下转型向上转型向下转型 多态的优缺点避免在构造方法种调用重写的方法 多态 一种事物&#xff0c;多种形态。 多态的概念&#xff1a;去完成某个行为&#xff0c;当不同对象去完成时会产生出不同的状态。 多态实现的条件 1.必须…...

MySQL学习---13、存储过程与存储函数

1、存储过程概述 MySQL从5.0版本开始支持存储过程和函数。存储过程和函数能够将负杂的SQL逻辑封装在一起&#xff0c;应用程序无序关注存储过程和函数内部复杂的SQL逻辑&#xff0c;而只需要简单的调用存储过程和函数就可以。 1.1 理解 含义&#xff1a;存储过程的英文是Sto…...

Mysql日志管理、备份与恢复

文章目录 一、Mysql日志管理1.mysql日志2.日志种类3.日志的查询4.配置日志文件 二、Mysql备份与分类1.数据备份的重要性 一、Mysql日志管理 1.mysql日志 Mysql的日志默认保存位置为/usr/local/mysql/date&#xff0c;Mysql的日志配置文件为/etc/my.cnf&#xff0c;里面有一个…...

STM32单片机声控语音识别RGB彩灯多种模式亮度可调WS2812彩灯

实践制作DIY- GC0129-语音识别RGB彩灯 一、功能说明&#xff1a; 基于STM32单片机设计-语音识别RGB彩灯 二、功能介绍&#xff1a; STM32F103C系列最小系统板5VUSB电源64个灯珠的WS2812灯板1个开关键&#xff08;3档亮度调节&#xff09;1个模式切换键&#xff08;白灯 红灯…...

高校9大学术工具推荐,一定要用起来哦!

1、文献管理工具&#xff1a;例如EndNote、Mendeley和Zotero&#xff0c;这些工具可以帮助您整理、管理和引用文献。 2、数据分析工具&#xff1a;例如SPSS、R和Python等&#xff0c;用于进行统计分析和数据处理。 3、学术写作工具&#xff1a;例如LaTeX和Microsoft Word&…...

记一次压力测试

性能测试文档 背景 为对产品性能有一定了解&#xff0c;现将产品展开一次性能测试&#xff1b; 环境与工具 本章为基本工具准备及linux命令说明&#xff0c;无先后顺序。 Xshell工具 本文使用Xshell在Windows界面下远程登录linux主机安装Xshell直接全部选择默认选项即可&…...

一个文明是否有竞争力,在很大程度上取决于信息传递的效率。

文章目录 引言I 有效地传递信息1.1 信息传播分类1.2 信息传递的有效性II 科技进步的必要条件和充分条件2.1 能量总量2.2 能量密度2.3 衡量科技成就的大小2.4 科学的诞生的意义:获得叠加式收益引言 科技进步的必要条件是能量总量,而充分条件是能量密度。一个文明是否有竞争力,…...

【网络】每天掌握一个Linux命令 - iftop

在Linux系统中&#xff0c;iftop是网络管理的得力助手&#xff0c;能实时监控网络流量、连接情况等&#xff0c;帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...

边缘计算医疗风险自查APP开发方案

核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...

2024年赣州旅游投资集团社会招聘笔试真

2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...

376. Wiggle Subsequence

376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...

OPenCV CUDA模块图像处理-----对图像执行 均值漂移滤波(Mean Shift Filtering)函数meanShiftFiltering()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 在 GPU 上对图像执行 均值漂移滤波&#xff08;Mean Shift Filtering&#xff09;&#xff0c;用于图像分割或平滑处理。 该函数将输入图像中的…...

iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈

在日常iOS开发过程中&#xff0c;性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期&#xff0c;开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发&#xff0c;但背后往往隐藏着系统资源调度不当…...

【学习笔记】erase 删除顺序迭代器后迭代器失效的解决方案

目录 使用 erase 返回值继续迭代使用索引进行遍历 我们知道类似 vector 的顺序迭代器被删除后&#xff0c;迭代器会失效&#xff0c;因为顺序迭代器在内存中是连续存储的&#xff0c;元素删除后&#xff0c;后续元素会前移。 但一些场景中&#xff0c;我们又需要在执行删除操作…...

MyBatis中关于缓存的理解

MyBatis缓存 MyBatis系统当中默认定义两级缓存&#xff1a;一级缓存、二级缓存 默认情况下&#xff0c;只有一级缓存开启&#xff08;sqlSession级别的缓存&#xff09;二级缓存需要手动开启配置&#xff0c;需要局域namespace级别的缓存 一级缓存&#xff08;本地缓存&#…...

对象回调初步研究

_OBJECT_TYPE结构分析 在介绍什么是对象回调前&#xff0c;首先要熟悉下结构 以我们上篇线程回调介绍过的导出的PsProcessType 结构为例&#xff0c;用_OBJECT_TYPE这个结构来解析它&#xff0c;0x80处就是今天要介绍的回调链表&#xff0c;但是先不着急&#xff0c;先把目光…...

GAN模式奔溃的探讨论文综述(一)

简介 简介:今天带来一篇关于GAN的,对于模式奔溃的一个探讨的一个问题,帮助大家更好的解决训练中遇到的一个难题。 论文题目:An in-depth review and analysis of mode collapse in GAN 期刊:Machine Learning 链接:...