第九次实验报告:数据库第三章课后作业

在这里插入图片描述

第三大题

(1)

select *
from S
where A=10;

(2)

select A,B
from S;

(3)

select A,B,C,D,E,F
from S,T
where S.c=T.c AND S.d=T.d

(4)

select *
from S,T
where S.c=T.c

(5)

select *
from S,T
where A<E

(6)

select 
from (select C,D from S) as S1,T;

第四大题

1.创建表
create table S(SNO char(2),
			   SNAME char(10),
			   STATUS smallint,
			   CITY char(10))

create table P(PNO char(2),
			   PNAME char(10),
			   COLOR char(2),
			   WEIGHT smallint)

create table J(JNO char(2),
			   JNAME char(10),
			   CITY char(10))

create table SPJ(SNO char(2),
				 PNO char(2),
				 JNO char(2),
				 QTY smallint)


	INSERT INTO S
	VALUES ('S1','精益',20,'天津');
	INSERT INTO S
	VALUES ('S2','盛锡',10,'北京');
	INSERT INTO S
	VALUES ('S3','东方红',20,'北京');
	INSERT INTO S
	VALUES ('S4','丰泰盛',20,'天津');
	INSERT INTO S
	VALUES ('S5','为民',20,'上海');

	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);
完成查询
--(1)
select distinct SNO
from SPJ
where JNO = 'J1';
--(2)
select SNO
from SPJ
where JNO = 'J1' AND PNO='P1';
--(3)
select SNO
from SPJ 
where JNO='J1' AND PNO IN (select PNO from P where COLOR = '红');
--(4)
select distinct JNO
from SPJ
where NOT(SNO IN (select SNO
				  from S
				  where CITY='天津')
		 AND 
		 PNO IN (select PNO
					 from P
					 where COLOR ='红'))
--(5)
--没有一个零件s1供应了,而j没有用
select distinct PNO
from SPJ
where SNO='S1';


select JNO
from J 
where NOT EXISTS ( select *
               from SPJ SPJX
			   where SPJX.SNO='S1'  AND NOT EXISTS( select *
												from SPJ SPJY
												where SPJX.SNO=SPJY.SNO AND SPJX.PNO=SPJY.PNO AND J.JNO=SPJY.JNO))

第五大题

1
select SNAME,CITY
from S;
2
select PNAME,COLOR,WEIGHT
from P;
3
select distinct JNO
from SPJ
where SNO='S1';
4
select PNAME,QTY
from SPJ,P
where SPJ.PNO=P.PNO AND SPJ.JNO='J2';
5
select PNO
from SPJ,S
where S.SNO=SPJ.SNO AND S.CITY='上海'
6
select JNO
from SPJ,S
where S.SNO=SPJ.SNO AND S.CITY='上海'
7
select JNO
from J
where NOT EXISTS(select *
		     from SPJ,S
			 where J.JNO=SPJ.JNO AND SPJ.SNO=S.SNO AND CITY='天津');
8
update P
set COLOR='蓝色'
where COLOR='红色'
9
update SPJ
set SNO=S3
where SNO='S5' AND JNO='J4' AND PNO='P6';
10

delete 
from SPJ
where SNO='S2'

delete 
from S
where SNO='S2'
11
insert
into SPJ
values('S2','J6','P4',200)

第九大题

create view SJ_QTY
as
	select SNO,PNO,QTY
	from SPJ,J
	where  SPJ.JNO=J.JNO AND J.JNAME='三建'
--9.1
select PNO,QTY
from SJ_QTY;
--9.2
select PNO,QTY
from SJ_QTY
where SNO='S1';
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值