好嘞 ✅ 我帮你把每一道题目写上题干、SQL 语句,并在语句前加上注释,答案紧跟在下面。
🔹 连接查询
1) 求供应工程 J1 零件的供应商号码 SNO
-- 查询供应工程 J1 零件的供应商编号
SELECT DISTINCT SNO
FROM SPJ
WHERE JNO = 'J1';
答案: S1, S2, S3, S5
2) 求使用供应商 S1 所供应零件的工程号码
-- 查询使用供应商 S1 所供应零件的工程编号
SELECT DISTINCT JNO
FROM SPJ
WHERE SNO = 'S1';
答案: J1, J2, J3, J4
3) 找出工程项目 J2 使用的各种零件的号码及其数量
-- 查询工程 J2 使用的零件编号及其数量
SELECT PNO, QTY
FROM SPJ
WHERE JNO = 'J2';
答案:
P2 100
P3 200
P5 100
P6 200
4) 找出天津的工程项目使用的各种零件的号码、数量及其对应的工程号
-- 查询天津的工程项目所使用的零件编号、数量及工程号
SELECT SPJ.JNO, SPJ.PNO, SPJ.QTY
FROM SPJ
JOIN J ON SPJ.JNO = J.JNO
WHERE J.CITY = N'天津';
答案:
J3 P1 100
J3 P6 300
J4 P1 700
J4 P3 500
J4 P6 200
J4 P2 100
J4 P6 500
5) 找出工程项目 J2 使用的各种零件的名称及其数量
-- 查询工程 J2 使用的零件名称及其数量
SELECT P.PNAME, SPJ.QTY
FROM SPJ
JOIN P ON SPJ.PNO = P.PNO
WHERE SPJ.JNO = 'J2';
答案:
螺栓 100
螺丝刀 200
凸轮 100
齿轮 200
6) 找出上海厂商供应的所有零件号码
-- 查询上海供应商供应的零件编号
SELECT DISTINCT SPJ.PNO
FROM SPJ
JOIN S ON SPJ.SNO = S.SNO
WHERE S.CITY = N'上海';
答案: P2, P3, P6
7) 找出使用上海产的零件的工程名称
-- 查询使用上海供应商供应零件的工程名称
SELECT DISTINCT J.JNAME
FROM SPJ
JOIN S ON SPJ.SNO = S.SNO
JOIN J ON SPJ.JNO = J.JNO
WHERE S.CITY = N'上海';
答案: 三建、一汽、造船厂
🔹 嵌套查询
1) 显示与“螺母”颜色相同的产品名
-- 查询与“螺母”颜色相同的零件名称
SELECT PNAME
FROM P
WHERE COLOR = (
SELECT COLOR FROM P WHERE PNAME = N'螺母'
);
答案: 螺母、螺丝刀、齿轮
2) 查出工程 J1 和 J3 同时使用的零件名称
-- 查询工程 J1 和 J3 同时使用的零件名称
-- 查出工程 J1 和 J3 同时使用的零件名称
SELECT DISTINCT P.PNAME
FROM P
WHERE P.PNO IN (SELECT PNO FROM SPJ WHERE JNO = 'J1')
AND P.PNO IN (SELECT PNO FROM SPJ WHERE JNO = 'J3');
答案: 螺母
3) 找出没有使用天津产的零件的工程号码
-- 查询没有使用天津产零件的工程编号
SELECT DISTINCT JNO
FROM SPJ
WHERE JNO NOT IN (
SELECT DISTINCT SPJ.JNO
FROM SPJ
JOIN S ON SPJ.SNO = S.SNO
WHERE S.CITY = N'天津'
);
答案: J5, J6, J7
4) 找出北京的任何工程都不购买的零件的零件号
-- 查询北京工程没有购买过的零件编号
SELECT PNO
FROM P
WHERE PNO NOT IN (
SELECT DISTINCT SPJ.PNO
FROM SPJ
JOIN J ON SPJ.JNO = J.JNO
WHERE J.CITY = N'北京'
);
答案: P2, P4, P6
5) 求没有使用天津供应商生产的红色零件的工程号 JNO
-- 查询没有使用天津供应商生产的红色零件的工程编号
SELECT DISTINCT JNO
FROM SPJ
WHERE JNO NOT IN (
SELECT DISTINCT SPJ.JNO
FROM SPJ
JOIN S ON SPJ.SNO = S.SNO
JOIN P ON SPJ.PNO = P.PNO
WHERE S.CITY = N'天津' AND P.COLOR = N'红'
);
答案: J2, J5, J6, J7
要不要我帮你把这些查询再整理成一个 Word/PDF 文档,带表格形式的答案,方便你直接交作业?
文章标题:数据库上机2答案
文章链接:https://zhexiange.com/36.html
本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明来自zhexian !