查询使用上海厂商供应的零件的工程的名字
时间: 2024-03-02 11:52:24 浏览: 65
好的,根据你的要求,我可以给出以下 SQL 查询语句:
```
SELECT DISTINCT P.JNAME
FROM SUPPLIER S, SPJ SP, PROJECT P
WHERE S.SNO = SP.SNO AND SP.JNO = P.JNO AND S.SADDRESS LIKE '%上海%'
ORDER BY P.JNAME;
```
这个查询语句可以查询出使用上海厂商供应的零件的工程的名字。其中,使用了供应商、零件、项目等表格的关联查询,同时加入了对供应商地址的限制条件,并使用 DISTINCT 关键字去重。最后按照工程名字进行排序。
相关问题
查询上海厂商供应的所有零件的号码
好的,根据你的要求,我可以给出以下 SQL 查询语句:
```
SELECT DISTINCT SP.PNO
FROM SUPPLIER S, SPJ SP
WHERE S.SNO = SP.SNO AND S.SADDRESS LIKE '%上海%'
ORDER BY SP.PNO;
```
这个查询语句可以查询出上海厂商供应的所有零件的号码。其中,使用了供应商、零件等表格的关联查询,同时加入了对供应商地址的限制条件,并使用 DISTINCT 关键字去重。
请写出下面查询的SQL语句 1、求供应工程J1零件P1的供应商号码SNO; 2、求供应工程J1零件为红色的供应商号码SNO; 3、求出使用上海产的零件的工程名称; 4、求没有使用天津供应商生产的红色零件的工程号(分别用三种方式写); 5、求至少用了供应商S1所供应的全部零件的工程号JNO; 6、把全部红色零件的颜色改成蓝色; 7、由 S5 供给 J4 的零件 P6 改为由 S3 供应;
1. SELECT SNO FROM 供应 WHERE JNO='J1' AND LNO='P1' AND 工程='供应工程';
2. SELECT SNO FROM 供应 WHERE JNO='J1' AND 颜色='红色' AND 工程='供应工程';
3. SELECT DISTINCT 工程 FROM 使用 WHERE 地点='上海';
4. (1) SELECT DISTINCT JNO FROM 使用 WHERE JNO NOT IN (SELECT DISTINCT JNO FROM 使用 WHERE 地点='天津' AND 颜色='红色');
(2) SELECT DISTINCT JNO FROM 使用 WHERE 地点<>'天津' OR (地点='天津' AND 颜色<>'红色');
(3) SELECT DISTINCT JNO FROM 使用 WHERE NOT EXISTS (SELECT * FROM 使用 WHERE JNO=使用.JNO AND 地点='天津' AND 颜色='红色');
5. SELECT JNO FROM 使用 WHERE SNO='S1' GROUP BY JNO HAVING COUNT(DISTINCT LNO)=(SELECT COUNT(DISTINCT LNO) FROM 使用 WHERE SNO='S1');
6. UPDATE 使用 SET 颜色='蓝色' WHERE 颜色='红色';
7. UPDATE 供应 SET SNO='S3' WHERE JNO='J4' AND LNO='P6' AND SNO='S5';