【头歌系统数据库实验】实验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 ##########
相关推荐
编啊编程啊程16 分钟前
【029】智能停车计费系统
java·数据库·spring boot·spring·spring cloud·kafka
Leon-Ning Liu1 小时前
Oracle数据库常用视图:dba_datapump_jobs
数据库·oracle·dba
zskj_zhyl1 小时前
智慧康养新篇章:七彩喜如何重塑老年生活的温度与尊严
大数据·人工智能·科技·物联网·生活
数据库生产实战1 小时前
Oracle 19C RAC下TRUNCATE TABLE的REUSE STORAGE选项作用和风险浅析!
数据库·oracle
小白银子2 小时前
零基础从头教学Linux(Day 60)
linux·数据库·mysql·oracle
瀚高PG实验室2 小时前
数据库安全配置指导
服务器·数据库·瀚高数据库
憋问我,我也不会2 小时前
MYSQL 命令
数据库·mysql
苗壮.3 小时前
「个人 Gitee 仓库」与「企业 Gitee 仓库」同步的几种常见方式
大数据·elasticsearch·gitee
驾数者3 小时前
Flink SQL入门指南:从零开始搭建流处理应用
大数据·sql·flink
乌恩大侠3 小时前
DGX Spark 恢复系统
大数据·分布式·spark