【头歌系统数据库实验】实验5 SQL的多表查询-1

目录

第1关:等值连接:求S表和J表城市相同的等值连接(列顺序还是按照S、J表)

第2关:查询供应情况,并显示供应商、零件和工程三者的名称

第3关:找出上海厂商供应的所有零件号码

第4关:找出使用上海产的零件的工程名称

第5关:找出没有使用天津产的零件的工程号码

第6关:求供应工程J1零件为红色的供应商号码SNO

[第7关:求没有使用天津供应商生产的红色零件的工程号 JNO](#第7关:求没有使用天津供应商生产的红色零件的工程号 JNO)

第8关:查询所有"红色"的15公斤及以上的零件名

第9关:查询工程名称中含有"厂"字的工程明细


如果你认为对你有帮助的话,不妨点赞收藏关注一下吧,爱你么么哒😘❤️❤️❤️

第1关:等值连接:求S表和J表城市相同的等值连接(列顺序还是按照S、J表)

任务描述

等值连接:求S表和J表城市相同的等值连接(列顺序还是按照S、J表)

相关知识

1、工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、工程项目所在城市(CITY)组成。 J表如下图:

现已构建J表,结构信息如下:

2、供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成. S表如下图:

现已构建S表,结构信息如下:


开始你的任务吧,祝你成功!

sql 复制代码
USE mydata;
#请在此处添加实现代码
########## Begin ##########
select S.*,J.*
from S,J
where S.CITY=J.CITY;
########## End ##########

第2关:查询供应情况,并显示供应商、零件和工程三者的名称

任务描述

查询供应情况,并显示供应商、零件和工程三者的名称

相关知识

1、供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成. S表如下图:

现已构建S表,结构信息如下:

2、零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成; P表如下图:

现已构建P表,结构信息如下:

3、工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、工程项目所在城市(CITY)组成。 J表如下图:

现已构建J表,结构信息如下:

4、供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,标识某供应商 供应某种零件 给某工程项目的数量为QTY。 SPJ表如下图:

现已构建SPJ表,结构信息如下:


开始你的任务吧,祝你成功!

sql 复制代码
USE mydata;
#请在此处添加实现代码
########## Begin ##########
SELECT SNAME,PNAME,JNAME,QTY
FROM S,P,J,SPJ
WHERE S.SNO=SPJ.SNO AND P.PNO=SPJ.PNO AND J.JNO=SPJ.JNO;

########## End ##########

第3关:找出上海厂商供应的所有零件号码

任务描述

找出上海厂商供应的所有零件号码(注意去重)

相关知识

1、供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成. S表如下图:

现已构建S表,结构信息如下:

2、供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,标识某供应商 供应某种零件 给某工程项目的数量为QTY。 SPJ表如下图:

现已构建SPJ表,结构信息如下:


开始你的任务吧,祝你成功!

sql 复制代码
USE mydata;
#请在此处添加实现代码
########## Begin ##########
SELECT DISTINCT PNO
FROM S,SPJ
WHERE S.CITY='上海' AND S.SNO=SPJ.SNO;


########## End ##########

第4关:找出使用上海产的零件的工程名称

任务描述

找出使用上海产的零件的工程名称,结果按工程名称降序排序。

相关知识

1、供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成. S表如下图:

现已构建S表,结构信息如下:

2、工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、工程项目所在城市(CITY)组成。 J表如下图:

现已构建J表,结构信息如下:

3、供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,标识某供应商 供应某种零件 给某工程项目的数量为QTY。 SPJ表如下图:

现已构建SPJ表,结构信息如下:


开始你的任务吧,祝你成功!

sql 复制代码
USE mydata;
#请在此处添加实现代码
########## Begin ##########
SELECT DISTINCT JNAME
FROM S,SPJ,J 
WHERE SPJ.sno=S.sno AND J.jno=SPJ.jno AND S.city='上海';

########## End ##########

第5关:找出没有使用天津产的零件的工程号码

任务描述

找出没有使用天津产的零件的工程号码

相关知识

1、供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成. S表如下图:

现已构建S表,结构信息如下:

2、供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,标识某供应商 供应某种零件 给某工程项目的数量为QTY。 SPJ表如下图:

现已构建SPJ表,结构信息如下:


开始你的任务吧,祝你成功!

sql 复制代码
USE mydata;
#请在此处添加实现代码
########## Begin ##########

SELECT JNO
FROM SPJ
WHERE JNO NOT IN(
    SELECT JNO
    FROM SPJ
    WHERE SNO IN(
        SELECT SNO
        FROM S
        WHERE CITY='天津'
    )
);
########## End ##########

第6关:求供应工程J1零件为红色的供应商号码SNO

任务描述

求供应工程J1零件为红色的供应商号码SNO

相关知识

1、零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成; P表如下图:

现已构建P表,结构信息如下:

2、供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,标识某供应商 供应某种零件 给某工程项目的数量为QTY。 SPJ表如下图:

现已构建SPJ表,结构信息如下:


开始你的任务吧,祝你成功!

sql 复制代码
USE mydata;
#请在此处添加实现代码
########## Begin ##########
SELECT SNO
FROM SPJ
WHERE JNO='J1' AND PNO IN(
    SELECT PNO
    FROM P
    WHERE COLOR='红'
);

########## End ##########

第7关:求没有使用天津供应商生产的红色零件的工程号 JNO

任务描述

求没有使用天津供应商生产的红色零件的工程号 JNO,(JNO注意去重)

相关知识

1、供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成. S表如下图:

现已构建S表,结构信息如下:

2、零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成; P表如下图:

现已构建P表,结构信息如下:

3、供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,标识某供应商 供应某种零件 给某工程项目的数量为QTY。 SPJ表如下图:

现已构建SPJ表,结构信息如下:


开始你的任务吧,祝你成功!

sql 复制代码
USE mydata;
#请在此处添加实现代码
########## Begin ##########
SELECT DISTINCT JNO
FROM SPJ
WHERE JNO NOT IN(
    SELECT JNO
    FROM SPJ
    WHERE PNO IN(
        SELECT PNO
        FROM P
        WHERE COLOR='红') AND SNO IN(
            SELECT SNO
            FROM S
            WHERE CITY='天津'
        )
);

########## End ##########

第8关:查询所有"红色"的15公斤及以上的零件名

任务描述

查询所有"红色"的15公斤及以上的零件名

相关知识

零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成; P表如下图:

现已构建P表,结构信息如下:


开始你的任务吧,祝你成功!

sql 复制代码
USE mydata;
#请在此处添加实现代码
########## Begin ##########
SELECT PNAME
FROM P
WHERE WEIGHT>=15 AND COLOR='红';

########## End ##########

第9关:查询工程名称中含有"厂"字的工程明细

任务描述

查询工程名称中含有"厂"字的工程明细

相关知识

工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、工程项目所在城市(CITY)组成。 J表如下图:

现已构建J表,结构信息如下:


开始你的任务吧,祝你成功!

sql 复制代码
USE mydata;
#请在此处添加实现代码
########## Begin ##########
SELECT *
FROM J
WHERE JNAME LIKE '%厂';

########## End ##########
相关推荐
oradh7 分钟前
Oracle 外部表(External Tables)使用总结
数据库·oracle
大力财经12 分钟前
抖音生活服务行业峰会召开:六大行业线上增长提速,平台持续护航商家经营
大数据·人工智能
弦儿14 分钟前
后端 Web 实战:员工管理模块(多表关系 + 多表查询 + 分页查询 + 条件分页)
后端·sql
长安米粒贵15 分钟前
事务隔离级别选对了,为什么还是会出现丢失更新?聊聊 5 个并发误区
数据库
一条泥憨鱼25 分钟前
【Redis | 黑马点评】达人探店功能源码解读
数据库·redis·缓存
XiaoKe202626 分钟前
从线索流失到高效转化,这家即时零售企业如何实现高速突围?
大数据·零售
AIGC_Dev30 分钟前
电商 AI 作图软件哪个好用?2026 主流商品图工具对比推荐
大数据·人工智能·ai工具·电商美工
赵渝强老师38 分钟前
【赵渝强老师】崖山数据库的命令行客户端工具
数据库·国产数据库·yashandb·崖山数据库
忡黑梨1 小时前
PostgreSQL 小版本升级实战:14.23 升级到 14.24(源码编译方式)
数据库·postgresql
Sayai1 小时前
Elasticsearch 日志写入链路调优实战:ingest pipeline 补时间戳、时区偏移修复与按值类型路由(附 translog 实测)
大数据·运维·elasticsearch·搜索引擎·性能优化