【SQL实验】更新操作

 完整代码在文章末尾【代码是自己的解答,并非标准答案,也有可能写错,文中可能会有不准确或待完善之处,恳请各位读者不吝批评指正,共同促进学习交流


将素材“图书管理”文件下载到本地,并将其还原到SQL SERVER库中,完成以下操作。

个人因为版本问题还原不了,所以导入.xls文件

导入操作和之前一样

如果不太会,可以去重新看一下

【SQL实验】高级查询(三)含附加数据库操作-CSDN博客

1.    将财会系读者借书记录存入一个新表ckjy中,保存字段为借书证号、姓名、书名、借书日期。

查询会创建新表 ckjy 

SELECT dz.借书证号,dz.姓名,ts.书名,jy.借书日期
INTO ckjy
FROM dz
JOIN jy ON dz.借书证号 = jy.借书证号
JOIN ts ON jy.总编号 = ts.总编号
WHERE dz.单位 = '财会系';

或者

SELECT dzjy.借书证号,姓名,书名,借书日期
INTO ckjy
from dz,jy,ts
where dz.借书证号= jy.借书证号
and jy.总编号= ts.总编号
and 单位= '财会系'

使用 CREATE TABLE 创建了一个名为 ckjy 的新表,包含字段 借书证号, 姓名, 书名, 借书日期

通过 INSERT INTO 从三个表(dz, jy, ts)中选择符合条件的数据,并插入到 ckjy 表中

CREATE TABLE ckjy (借书证号 CHAR(8),姓名 CHAR(8),书名 CHAR(8),借书日期 CHAR(8)  
);INSERT INTO ckjy (借书证号, 姓名, 书名, 借书日期)
SELECT dz.借书证号, dz.姓名, ts.书名, jy.借书日期
FROM dz
JOIN jy ON dz.借书证号 = jy.借书证号
JOIN ts ON jy.总编号 = ts.总编号
WHERE dz.单位 = '财会系';

2.    将记录('123','沈小霞','大学英语','2009-10-15'),('125','张自强','线性代数','2011-4-15')插入到ckjy表中。

INSERT INTO ckjy (借书证号, 姓名, 书名, 借书日期)
VALUES ('123', '沈小霞', '大学英语', '2009-10-15'),('125', '张自强', '线性代数', '2011-4-15');

 3.    根据ts表的结构用命令建立一个新表ts1。

直接建

 只要空表的话

-- 1. 将 ts 表的数据插入到 ts1 表中
SELECT *
INTO ts1
FROM ts;-- 2. 删除 ts 表中的所有数据
DELETE FROM ts;

 创建一个空的新表 ts1,你可以使用 CREATE TABLE 语句,并从 ts 表中选择表结构,而不复制数据

SELECT *
INTO ts1
FROM ts
WHERE 1 = 0;

4.    将数据库类的图书插入到表ts1中,数据库类图书包含书“数据库”和“Fox”两个关键字。

--4、
INSERT INTO ts1 (总编号, 书名, 作者, 出版单位, 分类号, 单价)
SELECT 总编号, 书名, 作者, 出版单位, 分类号, 单价
FROM ts
WHERE 书名 LIKE '%数据库%' AND 书名 LIKE '%Fox%';

 % 是通配符,表示匹配任意字符。

5.    将dz表中的年龄字段利用出生日期字段计算出并填充到各个记录中。

--5
UPDATE dz
SET 年龄 = DATEDIFF(YEAR, 出生日期, GETDATE()) - CASE WHEN MONTH(出生日期) > MONTH(GETDATE()) OR (MONTH(出生日期) = MONTH(GETDATE()) AND DAY(出生日期) > DAY(GETDATE())) THEN 1 ELSE 0 END;

6.    将ts表中所有科学出版社的图书的价格设置成原来价格的八折。

--6
UPDATE ts
SET 单价 = 单价 * 0.8
WHERE 出版单位 = '科学出版社';

7.    将所有的高级职称(包含“教授”两个字)、姓名为2个字的读者 插入到新表gjdz表中。

--7
CREATE TABLE gjdz (借书证号 VARCHAR(20),单位 VARCHAR(50),姓名 VARCHAR(50),性别 VARCHAR(10),年龄 INT,出生日期 DATE,职称 VARCHAR(50),地址 VARCHAR(100)
);INSERT INTO gjdz (借书证号, 单位, 姓名, 性别, 年龄, 出生日期, 职称, 地址)
SELECT 借书证号, 单位, 姓名, 性别, 年龄, 出生日期, 职称, 地址
FROM dz
WHERE 职称 LIKE '%教授%' AND LEN(姓名) = 2;

 

8.    删除dz表中家住3楼或3楼以下的读者。

--8
DELETE FROM dz
WHERE 地址 LIKE '%3楼%' OR 地址 LIKE '%2层%'OR 地址 LIKE '%1层%';

 

9.    删除借阅表中关于计算机基础的借阅信息。

--9
DELETE FROM jy
WHERE 总编号 IN (SELECT 总编号FROM tsWHERE 书名 LIKE '%计算机基础%'
);

10.    删除gjdz表。

--10
DROP TABLE gjdz;

 完整代码:

SELECT dz.借书证号,dz.姓名,ts.书名,jy.借书日期
INTO ckjy
FROM dz
JOIN jy ON dz.借书证号 = jy.借书证号
JOIN ts ON jy.总编号 = ts.总编号
WHERE dz.单位 = '财会系';--2
INSERT INTO ckjy (借书证号, 姓名, 书名, 借书日期)
VALUES ('123', '沈小霞', '大学英语', '2009-10-15'),('125', '张自强', '线性代数', '2011-4-15');
--3
SELECT *
INTO ts1
FROM ts
WHERE 1 = 0;--4、
INSERT INTO ts1 (总编号, 书名, 作者, 出版单位, 分类号, 单价)
SELECT 总编号, 书名, 作者, 出版单位, 分类号, 单价
FROM ts
WHERE 书名 LIKE '%数据库%' AND 书名 LIKE '%Fox%';
--5
UPDATE dz
SET 年龄 = DATEDIFF(YEAR, 出生日期, GETDATE()) - CASE WHEN MONTH(出生日期) > MONTH(GETDATE()) OR (MONTH(出生日期) = MONTH(GETDATE()) AND DAY(出生日期) > DAY(GETDATE())) THEN 1 ELSE 0 END;
--6
UPDATE ts
SET 单价 = 单价 * 0.8
WHERE 出版单位 = '科学出版社';
--7
CREATE TABLE gjdz (借书证号 VARCHAR(20),单位 VARCHAR(50),姓名 VARCHAR(50),性别 VARCHAR(10),年龄 INT,出生日期 DATE,职称 VARCHAR(50),地址 VARCHAR(100)
);INSERT INTO gjdz (借书证号, 单位, 姓名, 性别, 年龄, 出生日期, 职称, 地址)
SELECT 借书证号, 单位, 姓名, 性别, 年龄, 出生日期, 职称, 地址
FROM dz
WHERE 职称 LIKE '%教授%' AND LEN(姓名) = 2;
--8
--8
DELETE FROM dz
WHERE 地址 LIKE '%3楼%' OR 地址 LIKE '%2层%'OR 地址 LIKE '%1层%';--9
DELETE FROM jy
WHERE 总编号 IN (SELECT 总编号FROM tsWHERE 书名 LIKE '%计算机基础%'
);
--10
DROP TABLE gjdz;

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

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

相关文章

Hadoop(HDFS)

Hadoop是一个开源的分布式系统架构,旨在解决海量数据的存储和计算问题,Hadoop的核心组件包括Hadoop分布式文件系统(HDFS)、MapReduce编程模型和YARN资源管理器,最近需求需要用到HDFS和YARN。 文章目录 HDFS优缺点HDFS的读写原理 常…

Spire.PDF for .NET【页面设置】演示:获取 PDF 文件中的页数

计算 PDF 文件中的页数对于各种目的都至关重要,例如确定文档长度、组织内容和评估打印要求。除了使用 PDF 查看器了解页数信息外,您还可以通过编程自动执行该任务。在本文中,您将学习如何使用C#通过Spire.PDF for .NET获取 PDF 文件中的页数。…

stm32不小心把SWD和JTAG都给关了,程序下载不进去,怎么办?

因为想用STM32F103的PA15引脚,调试程序的时候不小心把SWD和JTAD接口都给关了,先看下罪魁祸首 GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);//关掉JTAG,不关SWGPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE);//关掉SW&am…

vue3使用element-plus,树组件el-tree增加引导线

vue3使用element-plus,树组件el-tree增加引导线 vue3项目element-plus,树组件el-tree增加引导线 element-plus组件库的el-tree样式 因为element的样式不满足当前的的需求,UI图,所以对el-tree进行增加了引导线 修改样式如下&am…

pytest简单使用

一:Mark 1.注册标记 在项目根目录下创建固定名为 pytest.ini 的配置文件,文件格式需要加上 [pytest] ,然后通过 markers 注册自定义标记 2.贴上标记 通过pytest加上装饰器,然后pytest.mark.XX配置自定义的标记,一个…

【C++】——多态

一.多态的概念 1.多态 多态(polymorphism)的概念:通俗的来说,就是多种形态。多态分为静态多态(编译时多态)和动态多态(运行时多态),而我们讲的多态大部分都是动态多态。 静态多态主要就是我们前面了解过的函数模板和函数重载,它…

Linux基础4-进程4(环境变量,命令行参数详解)

上篇文章:Linux基础4-进程3(进程优先级,竞争,独立,并行,并发,进程切换)-CSDN博客 本章重点: Linux中环境变量的理解和使用 目录 一. 环境变量概念和查看环境变量 1.1 环境变量概念 1.2 查看环境变量 二. 获取环境变…

【复平面】-复数相乘的几何性质

文章目录 从数学上证明1. 计算乘积 z 1 ⋅ z 2 z_1 \cdot z_2 z1​⋅z2​2. 应用三角恒等式3. 得出结果 从几何角度证明1.给出待乘的复数 u i u_i ui​2.给出任意复数 l l l3.复数 l l l 在不同坐标轴下的表示图 首先说结论: 在复平面中,两个复数&a…

如何将现有VUE项目所有包更新到最新稳定版

更新有风险,Enter要谨慎!!! 要将项目中的所有 npm 包更新到最新稳定版,可以使用 npm-check-updates 工具。以下是具体步骤: 步骤一:安装 npm-check-updates 首先,全局安装 npm-check-updates 工具: npm install -g…

excel常用技能

1.基础技能 1.1 下拉框设置 a. 选中需要设置的列或单元格,数据 ---》 数据验证 b.验证条件 ---> 序列(多个值逗号隔开) 2.函数 2.1 统计函数-count a.count(区域,区域,......) 统计数量,只针…

(linux驱动学习 - 12). IIC 驱动实验

目录 一.IIC 总线驱动相关结构体与函数 1.i2c_adapter 结构体 2.i2c_algorithm 结构体 3.向系统注册设置好的 i2c_adapter 结构体 - i2c_add_adapter 4.向系统注册设置好的 i2c_adapter 结构体 - i2c_add_numbered_adapter 5.删除 I2C 适配器 - i2c_del_adapter 二.IIC 设…

华为ensp防火墙配置(纯享版)

文章目录 前言一、拓扑结构二、配置步骤1.路由器配置(路由器代替互联网)2.server和pc配置3.防护墙配置4.测试 总结 前言 防火墙是生活和项目中不可或缺的一部分,本篇文章对华为的ensp防火墙配置做一个总结。在之前的dhcp配置中有软件的下载地…

996引擎 - 活捉NPC

996引擎 - 活捉NPC 引擎触发 - 引擎事件(QF)事件处理模块 GameEvent测试文件参考资料 引擎触发 - 引擎事件(QF) cfg_game_data 配置 ShareNpc1 可以将QM和机器人的触发事件全部转到 QF 引擎触发是通用的,TXT的所有触发转换成小写后在LUA中就可使用,如说明书中缺省可反馈至对接群…

如何借助AI 来提高开发效率

前言 随着人工智能(AI)技术的快速发展,特别是大规模语言模型(如 GPT 系列)的崛起,软件开发领域正在经历一场革命。AI 大模型不仅在代码生成方面展现出强大的能力,还在测试、维护和创新等多个环…

QML项目实战:自定义Button

目录 一.添加模块 ​1.QtQuick.Controls 2.1 2.QtGraphicalEffects 1.12 二.自定义Button 1.颜色背景设置 2.设置渐变色背景 3.文本设置 4.点击设置 5.阴影设置 三.效果 1.当enabled为true 2.按钮被点击时 3.当enabled为false 四.代码 一.添加模块 1.QtQuick.Con…

HarmonyOS NEXT应用元服务开发Intents Kit(意图框架服务)本地搜索接入方案

一、方案概述 当用户使用应用/元服务时,开发者可以按照标准意图Schema向系统共享数据,并支持意图调用(空调用与传参调用),以实现用户点击卡片后,可后台执行功能(例如播放指定歌曲)或…

CyclicBarrier使用详解及遇到的坑

上一篇文章讲的是关于是使用CountDownLatch实现生成年底报告遇到的问题,这个计数器和CyclicBarrier也有类似功能,但是应用场景不同。 一、应用场景 CountDownLatch: 有ABCD四个任务,ABC是并行执行,等ABC三个任务都执行完…

k8s-service、endpoints、pod之间是怎么进行网络互通的

k8s-service、endpoints、pod之间是怎么进行网络互通的 1、service2、endpoints3、service、endpoints、pod通信图4、不通服务pod内部间访问 1、service 在K8S中,Service是一种抽象,定义了一组Pod的逻辑集合和访问这些Pod的策略。首先,我们需…

资产管理系统:SpringBoot技术实现

企业资产管理系统 摘要 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了企业资产管理系统的开发全过程。通过分析企业资产管理系统方面的不足,创建了一个计算机管理企业资产管理系统的方案。文章介绍了企…

I.MX6U 裸机开发5.准备C环境并用C语言控制LED

I.MX6U 裸机开发5.准备C环境并用C语言控制LED 一、C运行环境1. 设置处理器模式2. CPSR 寄存器CPSR 寄存器结构模式位MRS 指令MSR 指令 3. 设置SP指针设置 SP 指针示例 保存和恢复 SP 指针示例 4. 跳转到C语言 二、程序编写1. 启动文件 start.S2. main.h 定义寄存器3. 主程序mai…