2 of 12数据库系统概论Introduction to
Database Systemse
作业点评chapter 3
总体情况
提交情况: 5 位同学未交作业: 陈拓、孔令晗、詹捷浩、王党同、王灏 6 位同学未交齐: 陈东旭、刘一骄、刘地、许翠、田城宇、蔡云川
完成情况:1. 抄袭现象严重;2. SQL 语句书写不规范;3. 不能正确书写复杂 SQL 语句。
1
2
3 of 12数据库系统概论Introduction to
Database Systemse
作业点评chapter 3
成绩分布
第三章0
2
4
6
8
10
12
14
16
18
A+AA-B+B
SELECT JNOFROM P, S, SPJWHERE S.SNO = SPJ.SNO AND P.PNO = SPJ.PNO AND S.CITY != ‘ 天津’ AND P.COLOR != ‘ 红’
4 of 12数据库系统概论Introduction to
Database Systemse
作业点评chapter 3
第 4(4)题4.4 Q :求没有使用天津供应商生产的红色零件的工程号
JNO
J.JNO P.PNO P.COLOR S.SNO S.CITY …
J1 红 天津J1 蓝 上海
SELECT JNOFROM JWHERE 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 = ‘ 红’ )
5 of 12数据库系统概论Introduction to
Database Systemse
作业点评chapter 3
第 4(4)题4.4 Q :求没有使用天津供应商生产的红色零件的工程号
JNOSELECT JNOFROM JWHERE 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 = ‘ 红’ )
6 of 12数据库系统概论Introduction to
Database Systemse
作业点评chapter 3
第 4(5)题4.5 Q :求至少用了供应商 S1 供应的全部零件的工程号 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’)
SELECT DISTINCT JNOFROM SPJ XWHERE NOT EXISTS (SELECT * FROM SPJ Y WHERE SNO = ‘S1’
AND NOT EXISTS (SELECT * FROM SPJ Z WHERE Z.PNO=Y.PNO AND Z.JNO=X.JNO)
不存在这样的零件y
供应商 S1 供应了 y
工程 x 未选用y
7 of 12数据库系统概论Introduction to
Database Systemse
作业点评chapter 3
第 5(6)题5.6 Q :找出使用上海产的零件的工程名称
SELECT DISTINCT JNAMEFROM JWHERE JNO IN
( SELECT *FROM SPJ,SWHERE SPJ.SNO=S.SNOAND S.CITY=‘ 上海’ )
当能确定内层查询返回的是单值时,可以用比较运算符。
SELECT SNO, PNO, QTYFROM SPJWHERE JNO =
( SELECT JNOFROM JWHERE JNAME=‘ 三建’ )
8 of 12数据库系统概论Introduction to
Database Systemse
作业点评chapter 3
第 5(7)题5.7 Q :找出没有使用天津产的零件的工程号码
SELECT JNOFROM JWHERE JNO NOT IN (SELECT JNO FROM SPJ, S WHERE S.SNO = SPJ.SNO AND S.CITY = ‘ 天津’ )
9 of 12数据库系统概论Introduction to
Database Systemse
作业点评chapter 3
第 5(10)题5.10
Q :从供应商关系中删除 S2 的记录,并从供应情况关系中删除相应的记录
DELETE FROM SPJWHERE SNO=‘S2’
DELETE FROM SWHERE SNO=‘S2’
SNO
S1
S2
S1
SNO
S1
S2
S3
SPJ S
10 of 12数据库系统概论Introduction to
Database Systemse
作业点评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 )
11 of 12数据库系统概论Introduction to
Database Systemse
作业点评chapter 3
刘力马丹刘阳
优秀作业
Top Related