针对供应管理数据库SPJ,进行各种嵌套与集合查询供应管理数据库SPJ模式: 供应商表S(SNO,SNAME,STAT,CITY) 零部件表P(PNO,PNAME,COLOR,WT) 工程项目表J(JNO,JNAME,CITY) 供应情况表SPJ(SNO,PNO,JNO,QTY):查询没有使用“天津”供应商供应的“红色”零件的工程项目信息;
时间: 2024-01-02 15:02:54 浏览: 151
数据库实验
好的,供应管理数据库SPJ的表结构如下:
供应商表S(SNO,SNAME,STAT,CITY)
零部件表P(PNO,PNAME,COLOR,WT)
工程项目表J(JNO,JNAME,CITY)
供应情况表SPJ(SNO,PNO,JNO,QTY)
查询没有使用“天津”供应商供应的“红色”零件的工程项目信息,可以通过以下SQL语句实现:
```
SELECT * FROM J 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 = '天津'
)
)
```
这个查询语句中,首先查询出供应红色零件的所有供应商(即在S表中城市为“天津”的供应商),然后查询出这些供应商供应的所有零件(即在SPJ表中对应的零件编号),最后查询出这些零件对应的所有工程项目(即在SPJ表中对应的工程项目编号),并使用NOT IN关键字查询出不包含这些工程项目的所有工程项目信息。
阅读全文