随笔 - 40  文章 - 0 评论 - 0 阅读 - 6781
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

在这里插入图片描述

名词解释

  • 视图:视图是一个虚表,其本质就是一条SELECT语句,而查询结果被赋予了一个名字,也即视图名字。或者说视图本身不包含任何数据,它只包含映射到基表的一个查询语句,当基表数据发生变化时,视图数据也随之变化。其目的就是在于方便,简化数据操作

简答题

在这里插入图片描述

【答案】
在这里插入图片描述

在这里插入图片描述

【答案】

在这里插入图片描述

在这里插入图片描述

【答案】

基本表是本身独立存在的表,在sQL中一个关系就对应一个表。视图是从一个或几个基本表导出的表。视图本身不独立存储在数据库中,是一个虚表。即数据库中只存放视图的定义而不存放视图对应的数据,这些数据仍存放在导出视图的基本表中。视图在概念上与基本表等同,用户可以如同基本表那样使用视图,可以在视图上再定义视图

在这里插入图片描述

【答案】

在这里插入图片描述

在这里插入图片描述

【答案】
基本表的行列子集视图一般是可更新的。若视图的属性来自集合函数、表达式,则该视图肯定是不可以更新的

应用题

在这里插入图片描述

【答案】

SELECT * FROM S WHERE A='10';

SELECT A,B FROM S;

SELECT A,B,S.C,S.D,E,F FROM S,T WHERE S.C=T.C AND S.D=T.D;

SELECT * FROM S,T WHERE S.C=T.C;

SELECT * FROM S,T WHERE A<E;

SELECT S.C,S.D,T.* FROM S,T;

在这里插入图片描述
在这里插入图片描述

【答案】

SELECT SNO FROM SPJ WHERE JNO='J1';

SELECT SNO FROM SPJ WHERE JNO='J1' AND PNO='P1';

SELECT SPJ.SNO FROM SPJ,P WHERE SPJ.PNO=P.PNO AND JNO='J1' AND COLOR='红';

SELECT JNO FROM SPJ WHERE JNO NOT IN
(SELECT JNO FROM SPJ,S,P WHERE S.CITY='天津' AND COLOR='红' AND SPJ.SNO=S.SNO AND SPJ.PNO=P.PNO)

①:先查询S1供应的零件号
SELECT PNO FROM SPJ WHERE SNO='S1' ,其结果为(P1,P2)
②:查询哪一个工程即使用P1又使用P2
SELECT JON FROM SPJ WHERE PNO='P1' AND JNO IN (SELECT JNO FROM SPJ WHERE PNO='P2');

在这里插入图片描述

SELECT SNAME,CTIY FROM S;

SELECT PNAME,COLOR,WEIGHT FROM P;

SELECT JNO FROM SPJ WHERE SNO='S1';

SELECT PNAME,QTY FROM P,SPJ WHERE SPJ.PNO=P.PNO AND JNO='J2';

SELECT PNO FROM SPJ,S WHERE SPJ.SNO=S.SNO AND S.CITY='上海';

SELECT JNAME FROM SPJ,S,J WHERE SPJ.SNO=S.SNO AND SPJ.JNO=J.JNO AND S.CITY='上海';

SELECT JNO FROM SPJ WHERE JNO NOT IN(
	SELECT JNO FROM SPJ,S WHERE SPJ.SNO=S.SNO AND S.CITY='天津'
);

UPDATE P SET COLOR='蓝' WHERE COLOR='红';

UPDATE SPJ SET SNO='S3' WHERE SNO='S5' AND JNO='J4' AND PNO='P6';

DELETE FROM S WHERE SNO='S2' DELETE FROM SPJ WHERE SNO='S2';

INSERT INTO SPJ VALUES('S2','J6','P4',200);

在这里插入图片描述

【答案】

CREATE VIEW VSP AS SELECT SNO,SPJ.PNO,QTY FROM SPJ,J WHERE PPJ.JNO=J.JNO AND J.JNAME='三建'

SELECT PNO,QTY FROM VSP

SELECT * FROM VSP WHERE SNO='S1';
posted on   快乐江湖  阅读(136)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示