**

1.创建表

**
create table s
(sno char(2),
sname varchar(10),
status int,city varchar(10));

create table p(
pno char(2),
pname varchar(6) ,
color char(1),
weight int);

create table j(
jno char(2),
jname varchar(8),
city varchar(6));

create table spj(
sno char(2),
pno char(2),
jno char(2),
qty int);

**

2.插入数据

**
insert into s values(‘S1’,‘竟仪’,20,‘天津’);
insert into s values(‘S2’,‘盛锡’,10,‘北京’);
insert into s values(‘S3’,‘东方红’,30,‘北京’);
insert into s values(‘S4’,‘丰泰盛’,20,‘天津’);
insert into s values(‘S5’,‘为民’,30,‘上海’);

insert into p values(‘P1’,‘螺母’,‘红’,12);
insert into p values(‘P2’,‘螺栓’,‘绿’,17);
insert into p values(‘P3’,‘螺丝刀’,‘蓝’,14);
insert into p values(‘P4’,‘螺丝刀’,‘红’,14);
insert into p values(‘P5’,‘凸轮’,‘蓝’,40);
insert into p values(‘P6’,‘齿轮’,‘红’,30);

insert into j values(‘J1’,‘三建’,‘北京’);
insert into j values(‘J2’,‘一汽’,‘长春’);
insert into j values(‘J3’,‘弹簧厂’,‘天津’);
insert into j values(‘J4’,‘造船厂’,‘天津’);
insert into j values(‘J5’,‘机车厂’,‘唐山’);
insert into j values(‘J6’,‘无线电厂’,‘常州’);
insert into j values(‘J7’,‘半导体厂’,‘南京’);

insert into spj values(‘S1’,‘P1’,‘J1’,200);
insert into spj values(‘S1’,‘P1’,‘J3’,100);
insert into spj values(‘S1’,‘P1’,‘J4’,700);
insert into spj values(‘S1’,‘P2’,‘J2’,100);
insert into spj values(‘S2’,‘P3’,‘J1’,400);
insert into spj values(‘S2’,‘P3’,‘J2’,200);
insert into spj values(‘S2’,‘P3’,‘J4’,500);
insert into spj values(‘S2’,‘P3’,‘J5’,400);
insert into spj values(‘S2’,‘P5’,‘J1’,400);
insert into spj values(‘S2’,‘P5’,‘J2’,100);
insert into spj values(‘S3’,‘P1’,‘J1’,200);
insert into spj values(‘S3’,‘P3’,‘J1’,200);
insert into spj values(‘S4’,‘P5’,‘J1’,100);
insert into spj values(‘S4’,‘P6’,‘J3’,300);
insert into spj values(‘S4’,‘P6’,‘J4’,200);
insert into spj values(‘S5’,‘P2’,‘J4’,100);
insert into spj values(‘S5’,‘P3’,‘J1’,200);
insert into spj values(‘S5’,‘P6’,‘J2’,200);
insert into spj values(‘S5’,‘P6’,‘J4’,500);

**

3.请用sql语句完成下面题目的查询。

**
(1)找出所有供应商的姓名和所在城市:
select sname,city FROM s;

(2)求供应工程J1零件P1的供应商号码SNO:
select sno from spj where jno=‘j1’ and pno=‘p1’

(3)求供应工程J1零件为红色的供应商号码SNO:
select distinct sno from spj NATURAL JOIN p where color=‘红’ AND jno=‘j1’

(4)找出工程项目J2使用的各种零件的名称及其数量。
select pname,sum(qty) as sumqty from p join spj on p.pno=spj.pno where jno=‘j2’ group by pname

(5)找出使用上海产的零件的工程名称。
select distinct jname from s,j,spj where s.sno=spj.sno and j.jno=spj.jno and s.city=‘上海’

(6)求没有使用天津供应商生产的红色零件的工程号JNO:
select jno from spj where jno not in (select jno from spj,p,s where spj.pno=p.pno and spj.sno=s.sno and city=‘天津’ and color=‘红’)

(7)把全部红色零件的颜色改成蓝色。
update p set color=‘蓝’ where color=‘红’

(8)由S5供给J4的零件P6改为由S3供应。
update spj set sno=‘S3’ where sno=‘S5’ and pno=‘P6’ and jno=‘J4’

(9)从供应商关系中删除供应商号是S2的记录,并从供应情况关系中删除相应的记录。
delete from s where sno=‘s2’
delete from spj where sno=‘s2’

(10)请将(S2,J6,P4,200)插入供应情况关系。
INSERT INTO spj(sno,pno,jno,qty) values(‘S2’,‘P4’,‘J6’,200)

**

4.请为三建工程项目建立一个供应情况的视图,包括供应商代码SNO、零件代码PNO、供应数量QTY。

**
create view v_sj as
select sno,pno,sum(qty) as qty from spj where jno in (select jno from j where jname = ‘三建’) group by sno,pno
(1)找出三建工程项目使用的各种零件代码及其数量
select pno,sum(qty) as qtynum from v_spj group by pno
(2)找出供应商S1的供应情况
select * from v_spj where sno=‘S1’

**

5.在表SPJ定义索引IDX_SPJ,包括(SNO,PNO,JNO)。

**

CREATE UNIQUE INDEX IDX_SPJ TO(SNO,PNO,JNO);

数据库系统原理实验一:关系数据库标准语言SQL相关推荐

  1. 实验一 关系数据库标准语言SQL

    实验一 关系数据库标准语言SQL [实验目的] 在给定的关系数据库管理系统MySQL环境下,通过实验学生能够: 1.MySQL环境的认识及熟悉,了解其对标准SQL的扩充. 2.掌握MySQL环境下数据 ...

  2. 【数据库原理 • 三】关系数据库标准语言SQL

    前言 数据库技术是计算机科学技术中发展最快,应用最广的技术之一,它是专门研究如何科学的组织和存储数据,如何高效地获取和处理数据的技术.它已成为各行各业存储数据.管理信息.共享资源和决策支持的最先进,最 ...

  3. 数据库系统-第三章-关系数据库标准语言SQL

    内容来自2021春季学期<数据库系统>课程的PPT SQL概述 SQL(Structured Query Language)--结构化查询语言,是关系数据库的标准语言:是一个通用的.功能极 ...

  4. 【思维导图总结——数据库系统概论】关系数据库标准语言SQL

    关系数据库标准语言SQL 数据库系统概论--关系数据库标准语言SQL 关系数据库标准语言SQL 一.SQL概述 二.数据定义 (一).SQL数据定义语句以及现代关系数据库的层次结构 (二).模式的定义 ...

  5. 重温《数据库系统概论》【第一篇 基础篇】【第3章 关系数据库标准语言SQL】

    本篇内容为中国人民大学教授王珊.萨师煊的<数据库系统概论>自学课程的复习笔记,学习视频源于小破站(传送门),对应视频P16-P27,属教材"[第一篇 基础篇]"的&qu ...

  6. 【数据库系统】第一部分 数据库基础(3) 关系数据库标准语言SQL(3) 数据定义

    本文属于「数据库系统」系列文章之一,这一系列着重于「数据库系统知识的学习与实践」.由于文章内容随时可能发生更新变动,欢迎关注和收藏数据库系统系列文章汇总目录一文以作备忘.需要特别说明的是,为了透彻理解 ...

  7. 第3章关系数据库标准语言SQL

    第3章关系数据库标准语言SQL 本文全部内容来自数据库系统概论(第5版)-王珊.萨师煊著 3.1SQL概述 综合统一 高度非过程化 面向集合的操作方式 以同一种语法结构提供多种使用方式 语法简洁,易学 ...

  8. 数据库系统原理 实验5 数据库恢复技术

    数据库系统原理 实验5 数据库恢复技术 一. 实验目的 1. 掌握数据库备份和恢复的概念: 2. 熟练掌握数据库备份和恢复.数据导入导出等操作: 二. 实验内容及要求 假定你的数据库名称是XDB(具体 ...

  9. 第三章关系数据库标准语言SQL

    第三章关系数据库标准语言SQL 3.1_SQL的特点 3.3_数据定义 3.3.1_基本表的定义.删除与修改 3.3.3_索引的建立与删除 3.4_数据查询 3.4.1_查询时消除重复行 3.4.2_ ...

  10. 【数据库系统设计】关系数据库标准语言SQL(3)

    关系数据库标准语言SQL 数据更新 插入数据 插入元组 插入子查询结果 修改数据 修改某一个元组值 删除数据 删除某一个元组的值 删除多个元组的值 带子查询的删除语句 空值的处理 空值的产生 空值的判 ...

最新文章

  1. Swift 使用CoreLocation获取定位与位置信息
  2. 【项目实践】中英文文字检测与识别项目(CTPN+CRNN+CTC Loss原理讲解)
  3. 链接静态库的顺序问题
  4. USB转串口 FT232/PL2303/CH340 比较
  5. python-条件语句
  6. 移动端html搜索怎么写,移动端实现搜索功能
  7. Hadoop! | 大数据百科 | 数据观 | 中国大数据产业观察_大数据门户
  8. python中again函数怎么用_Python中的偏函数怎么用?
  9. github地址持续收集
  10. 在xml里追加结点时添加回车(libxml2)
  11. 【渝粤教育】国家开放大学2018年秋季 0248-21T电工电子技术 参考试题
  12. java的css的块_CSS基础知识(概念、块级元素、行内元素、选择器)
  13. rtsp、rtmp测试地址
  14. 基于MATLAB的线性规划
  15. oracle数据存储层级
  16. OpenPose: Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields
  17. pip install 后面加个点是什么意思?
  18. 今天市场:洗洗更健康!
  19. oracle中活着的写法,oraclekk
  20. 在 FPGA 上快速构建 PID 算法

热门文章

  1. Tiled结合Unity做地图——Tiled2Unity
  2. 数据科学家处理小数据的7个技巧。
  3. 计算机英语性考任务答案,国开电大理工英语1单元自测2形考任务答案
  4. 非计算机毕业生2015互联网校招求职之路(拿到腾讯阿里offer)
  5. python现成项目_搭建python项目
  6. yxc_第二章 数据结构(一)_kmp算法
  7. 无人机自动悬停的秘密
  8. Nest.js模块机制的概念和实现原理
  9. Qt嵌入式开发的初步认识
  10. C# 阿里云短信接口调用(不使用SDK,单文件完成)