Transcript ppt

第三章作业点评
助教: 干艳桃、张榆
Contact 干艳桃
Email:[email protected]
1
提交情况:
5位同学未交作业:
陈拓、孔令晗、詹捷浩、王党同、王灏
6位同学未交齐:
陈东旭、刘一骄、刘地、许翠、田城宇、蔡云川
2
完成情况:
1. 抄袭现象严重;
2. SQL语句书写不规范;
3. 不能正确书写复杂SQL语句。
数据库系统概论
Introduction to Database Systemse
2
of
12
作业点评
chapter 3
成绩分布
18
16
14
12
A+
10
A
8
A-
6
B+
4
B
2
0
第三章
数据库系统概论
Introduction to Database Systemse
3
of
12
作业点评
chapter 3
4.4
第4(4)题
Q:求没有使用天津供应商生产的红色零件的工程号JNO
SELECT JNO
FROM J
WHERE JNO NOT IN
(SELECT JNO
FROM SPJ, P, S
WHERE S.SNO = SPJ.SNO
AND P.PNO = SPJ.PNO
AND S.CITY = ‘天津’
AND P.COLOR = ‘红’)
SELECT JNO
FROM P, S, SPJ
WHERE S.SNO = SPJ.SNO
AND P.PNO = SPJ.PNO
AND S.CITY != ‘天津’
AND P.COLOR != ‘红’
J.JNO
P.PNO
P.COLOR
S.SNO
S.CITY
J1
红
天津
J1
蓝
上海
数据库系统概论
Introduction to Database Systemse
4
of
12
…
作业点评
chapter 3
4.4
第4(4)题
Q:求没有使用天津供应商生产的红色零件的工程号JNO
SELECT JNO
FROM J
WHERE NOT EXISTS
(SELECT *
FROM SPJ, P, S
WHERE J.JNO = SPJ.JNO
AND S.SNO = SPJ.SNO
AND P.PNO = SPJ.PNO
AND S.CITY = ‘天津’
AND P.COLOR = ‘红’)
数据库系统概论
Introduction to Database Systemse
5
of
12
作业点评
chapter 3
4.5
第4(5)题
Q:求至少用了供应商S1供应的全部零件的工程号JNO
SELECT DISTINCT JNO
FROM SPJ X
WHERE NOT EXISTS 不存在这样的零件y
(SELECT *
FROM SPJ Y
WHERE SNO = ‘S1’ 供应商S1供应了y
AND NOT EXISTS
(SELECT *
FROM SPJ Z
工程x未选用y
WHERE Z.PNO=Y.PNO
AND Z.JNO=X.JNO)
1. SELECT JNO
FROM SPJ
WHERE SNO = ‘S1’
2. SELECT JNO
FROM SPJ
WHERE PNO=‘P1’
AND JNO IN
(SELECT JNO
FROM SPJ
WHERE PNO=‘P2’)
数据库系统概论
Introduction to Database Systemse
6
of
12
作业点评
chapter 3
5.6
第5(6)题
Q:找出使用上海产的零件的工程名称
 当能确定内层查询返回的是
单值时,可以用比较运算符。
SELECT DISTINCT JNAME
FROM J
WHERE JNO IN
( SELECT *
FROM SPJ,S
WHERE SPJ.SNO=S.SNO
AND S.CITY=‘上海’)
数据库系统概论
Introduction to Database Systemse
SELECT SNO, PNO, QTY
FROM SPJ
WHERE JNO =
( SELECT JNO
FROM J
WHERE JNAME=‘三建’)
7
of
12
作业点评
chapter 3
5.7
第5(7)题
Q:找出没有使用天津产的零件的工程号码
SELECT JNO
FROM J
WHERE JNO NOT IN
(SELECT JNO
FROM SPJ, S
WHERE S.SNO = SPJ.SNO
AND S.CITY = ‘天津’ )
数据库系统概论
Introduction to Database Systemse
8
of
12
作业点评
chapter 3
5.10
第5(10)题
Q:从供应商关系中删除S2的记录,并从供应情况关系中
删除相应的记录
SPJ
S
DELETE FROM SPJ
WHERE SNO=‘S2’
SNO
SNO
S1
S1
DELETE FROM S
WHERE SNO=‘S2’
S2
S2
S1
S3
数据库系统概论
Introduction to Database Systemse
9
of
12
作业点评
chapter 3
5.11
第5(11)题
Q:请将(S2, J6, P4, 200)插入SPJ表
INSERT INTO SPJ (SNO, JNO, PNO, QTY)
VALUES (‘S2’, ‘J6’, ‘P4’, 200)
 表名后面添加列名,默认为所有列且按照建表时的顺序
排列各属性
 字符类型的值需要加单引号(如CHAR, VARCHAR),
数值类型不加(INT, DOUBLE)
数据库系统概论
Introduction to Database Systemse
10
of
12
作业点评
chapter 3
优秀作业
 刘力
 马丹
 刘阳
数据库系统概论
Introduction to Database Systemse
11
of
12
作业点评
chapter 3
THANK YOU
Contact 干艳桃
作业点评
chapter 3
Email:[email protected]